求解,让我修改数据库链接文件,小白数据库一个,不懂修改哪里。

    前面两篇文章都是概念性的全蔀文字描述!看起来比较费劲!有的读者在看文章时是不是会睡着呢!今天我们就正式进入到数据库和表的实战中!开始下文吧!

    数据库對象是数据库里定义的、用于存储或引用数据的对象,比如表、视图、促序列、索引和异名。本章的内容以表为主因为它是关系型数據库里最主要、最简单的数据存储形式。

规则是与数据库某个用户名相关联的数据库对象结婚相应的用户名被称为规则所有人,或是关聯对象组的所有人数据库里可以有一个或多个规则。用户至于同名规则相关联通常情况下反之亦然。一般来说当用户创建一个对象時,就是在自己的规划里创建了它除非明确指定在另一个规划里创建它。因此根据在数据库里的权限,用户可以创建、操作和删除对潒规划可以只包含一个表,也可以包含无数个对象其上限由具体的Sql实现决定。

假设我们从管理员获得了一个数据用户名和密码用户洺是USER1,我们登录到数据库并创建一个名为EMPLOYEE_TBL的表这时对于数据库来说,表的实际名称是USER1.EMPLOYEE_TBL这个表的规划名是USER1,也就是这个表的所有者这樣,我们就为这个规划创建了第一个表

当我们访问自己所拥有的表时(在级的规划里),不必引用规划名称举例来说,使用下面两种方式都可以引用刚才创建的表:

我们当然喜欢使用第一种方法因为它简单,需要敲击键盘的次数比较少如果其他用户要访问这个表,僦必须知道规划名称如下所示;

3.表,数据的主要存储方式

表是关系型数据库里最主要的数据存储对象其最简单形式是由行和列组成,汾别都包含着数据表在数据库占据实际的物理空间,可以是永久的或是临时的

字段在关系型数据库也被称为列,它是表的组成部分被设置为特定的数据类型。数据类型觉得了什么样的数据尅保存在相应的列中从而确保了数据的完整性。

每个数据库表都至少要包含一列、列元素在表里用于保存特定类型的数据比如人名或地址。举例来说姓名就可以作为顾客表里一个有效的列。

一般来说列的名称應该是连续的字符串,其长度在不同的Sql实现中都是由明确的规定我们一般使用下划线作为分隔符,比如表示顾客姓名的列可以命名为CUSTOMER_NAME更恏一些这样做可以提高数据库对象的可读性。读者也可以使用其他命名规则例如驼峰匹配,以满足特定的需求对于一个数据库开发團队来说,明确一个命名规则并在开发过程中严格遵守这一规则,是非常重要的

列中最常见的数据类型是字符串。这一数据可以保存為大写或小写字符应该根据数据的使用方式具体选择。在大多数情况下出于简化和一致的目的,数据是以大写存储的如果数据库里存储的数据具有不同的大小写,我们可以根据需要利用函数把数据转化为大写或小写

列也可以指定为NULl或NOT NULL,当设置为NOT NULL时表示其中必须包含数据;这是为NULL是,就表示不包含数据NULL不是空白,而是类似一个空的字符串在数据库中占据了一个特殊的位置。因此如果某一个位置缺少数据,就尅使用NULL

行是数据库表里的一条记录。举例来说顾客表里的一行数据可能包含顾客的标识号码、姓名、地址、电话号码、传真号码等。行由字段组成表最少可以包含一行数据,也可以包含数以百万计的记录

Sql里的CREATE TABLE语句用于创建表。虽然创建表的实际操作┿分简单但在执行CREATE TABLE命令之前,应该花更多的时间和精力来设计表的结构这样可以节省反复修改表结构而浪费的时间。

在创建表时需偠考虑以下一些基本问题。

(1).表里会包含什么类型的数据;

(2).表的名称是什么;

(3).哪个(或哪些)列组成主键;

(4).列(字段)的名称是什么;

(5).每一列的数据类型是什么;

(6).每一列的长度是多少;

在考虑了这些问题之后实际的CREATE TABLE命令就很简单了!

创建表的基本语法如下所示:

在为对象选擇名称时,特别是表和列的名称应该让名称反应出所保存的数据。比如说保存雇员信息的表可以命名为EMPLOYEE_TBL。列的名称也是如此比如说,保存雇员电话号码的列显然命名为PHONE_NUMBER是比较合适的。

在表被创建之后我们可以使用ALTER TABLE命令对其进行修改。可以调节列、删除列、修改列萣义、添加和去除约束在某些实现中可以修改表的值。ALTER TABLE命令的

(1).修改表的元素

列的属性是其所包含数据的规则和行为。利用ALTER TABLE命令修改列嘚属性在此“属性”的含义是:

列的数据类型,列的长度、有效位或标度列值能否为空。

这一列定义的数据类型没有变但是长度从9變为10。

如果表已经包含数据这是添加的列就不能定义为NOT NULL,这是一条基本规则NOT NULL意味着这一列在每条记录里都是必须包含数据。所以在添加一条定义为NOT NULL的列时,如果现有的记录没有包含新的列所需的数据我们就会陷入到自相矛盾的境地。

因此强行向表添加一列的方法洳下:

添加一列,把它定义为NULL(这一行不一定要包含数据),

给这个新列在每条记录里都插入数据

(3).添加自动增加的列。

有时我们需要一列的数據能够自动增加从而让每一行都具有不同的序号。在很多情况下都需要这样做比如数据中如果没有适合充当主键的值,或是我们想利鼡序列号对数据进行排序创建自动增加的列是相当简单的。MySql提供了SERIAL方法为表生成真正的唯一值如下所示:

PS:列的默认属性是NULL,所以在CREATE TABLE语呴里不必明确设置。但NOT NULL必须明确指定

在修改现有表里的列时,需要考虑很多因素下面是修改列的一些通用规则:

列的长度可以增加到特定数据类型所允许的最大长度;

如果想缩短某列的长度,则长度要求这一列在表里所有数据的长度都小于或等于新长度;

数值数据的位數可以增加;

如果要缩短数值数据的位数则必须要求这一列在表里所有数值的位数小于或等于新指定的位数;

数值里的小数位数可以增加或减少;

列的数据类型一般是可以改变的。于其它表的列或是被其它表的列所引用,在撤销这一列时就可能发生问题

有些实现会限淛用户使用ALTER TABLE的某些选项。举例来说可能不允许从表里撤销列。为了绕过这种限制我们可以撤销整个表,然后重建新的表如果某一列昰依赖于其它表的列,或是被其它表的列所引用在撤销这一列时就可能发生问题。

删除表示一种相当简单的操作如果使用了RESTRICT选项,并苴表被视图或约束所引用DROP语句就会返回一个错误。当使用了CASCADE选项时删除操作会成功执行,而且全部引用视图和约束都被删除删除表嘚语句如下所示:

PS:删除表的操作务必指向准确,在删除表时在提交命令之前要确保指定了表的规划名或所有者,否则可能误删除其它嘚表如果使用多用户账户,在删除表之前一定要确定使用了适当的用户名链接数据库

完整性约束用于确定关系型数据库里数据的准确性和一致性。在关系型数据库里数据完整性是通过引用完整性的概念实现的,而在引用完整性里包含了很多类型

主键是表里一个或多個用于实现记录唯一性的字段。虽然主键通常是由一个字段构成的但也可以由多个字段组成。举例来数雇员的社会保险号码或雇员被汾配的标识号码都可以再雇员表里作为主键。主键的作用在于表里每条记录都具有唯一值由于在雇员表里一般不会出现多条记录表示一個雇员的情况,所以雇员的标识号码可以作为主键主键是在创建表时指定的。

唯一性约束要求表里某个字符的值在每条记录里都是唯一嘚这一点与主键类似。即使我们对一个字段设置了主键约束也可以对另一个字段设置唯一性约束,尽管它不会被当做主键使用

外键昰子表里的一个字段,引用父表里的主键外键约束是确保表与表之间引用完整性的主要机制。一个被定义为外键的字段用于引用另一个表里的主键

NOT NULL是一个可以用于字段的约束,它不允许字段包含NULL值;话句话时候定义NOT NULL的字段在每条记录里都必须有值。在没有指定NOT NULL时字段默认为NULL,也就是可以是NULL值

检查约束用于检查输入到特定字段的数据的有效性,可以提供后端的数据库编辑虽然编辑通常是在前端程序里完成的。一般情况下编辑功能限制了能够输入字段或对象的值,无论这个功能是在数据库还是在前端程序里实现的检查约束为数據提供了另一层保护。

PS: 有效实现允许终止约束这样我们可以选择暂时中止它,而不是从数据库里去除它稍后还尅再启动它。

本系列博攵中使用的数据库是MySql,有关MySql的下载和安装就不多说了直接百度就知道了!并且在实际开发中,还使用了数据库可视化工具例如SQLyog,使用这個工具可以快速开发、管理MySql数据库在MySql命令行中输入的命令,目前只在MySql中验证有效其他数据库没有验证过!有关SQLyog有问题,找度娘!

安装唍MySql后打开SQLyog,新建一个连接输入密码,如果显示如下图所示就表示成功了,


创建数据库有两种方式

其中dbname是数据库名称。一定要记得命令最后还有“;”!

(2).在SQLyog中在左侧列表的空白处单击鼠标右键,弹出的菜单中选择“创建数据库”,接着会弹出如下图的对话框填写數据库名的选项框,我们这里填写“studensManager”,其中两个选择项选择默认值即可接着单击“创建”按钮,“studensManager”数据库就创建成功了在左边的数據库列表里会出现“studensManager”数据库。

创建数据库成功后接着就可以创建表了!

(1).在MySql命令行中,如果我们想查看目前都有哪些数据库该使用什麼命令呢?

show databases; 一定要记得命令最后还有“;”!可以试试不输入“;”是什么结果!

便会显示目前MySql中有哪些数据库。例如我本机上显示如下图所示


(2).如何选择进入哪个数据库呢?

例如我本机显示如下,

例如我本机显示如下,

(2).在SQLyog中左侧的导航中选择所要操作的数据库,单击鼠标右键从弹出的快捷菜单中选择创建表命令,创建新表


创建表成功后,就会在Tables目录下看到表students,


如果我们要对已经创建成功的表的列进荇修改该如何操作呢?还记得前面说的吗

(2).在SQLyog中,选中要修改的表选择更改表选项,就会显示类似一个创建表的窗口接着在这个窗ロ中就可以修改表了!添加或者删除某一列,


修改完后点击Alter按钮!


再次刷新表,就可以看到表多了一列!修改成功!

例如创建一个Persons表

紟天就到这里!下篇文章,我们继续表的操作!详情请看 !

}

对于php的初学者来说框架两个字聽起来就很高大上,忍不住让人敬而远之并且对于小白数据库来说,显然框架也不是一个好的入门选择而要完成一个项目,连接数据庫也是必要的操作那么我们就需要用到原生的php语句去连接数据库。

上节课我们已经创建好了数据库这节课我们就连接这个数据库。

其實连接数据库的语句是非常简单的而且也不多,不过我们要先认识一下sql语句~

首先对数据库的操作分为“增”、“删”、“改”、“查”四大类,开头分别对应着“insert into”、“delete”、“update”和“select”

这么一看是不是感觉很好理解,是的就是字面意思,我们再结合php看看如何用php实现這几句话:

首先是这三句根本不需要理解的代码~填上各项信息就好~

接下来准备好我们的sql语句在php中以字符串的形式存在

注意是用双引号包裹,因为sql语句中有单引号如果不用双引号会造成错乱。

那么就全部写完了是的,满打满算就这五行代码是不是非常简单,我们来运荇一下:

运行完什么也没有啊不过把事情往好处想,至少也没报错是不是~

那我们来刷新一下数据库看看

啊哈已经修改成功啦~

}

我要回帖

更多关于 小白数据库 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信