第三章.保证数据完整性.总结

       第二章未总结的:

       *修改表

        表创建后,我们还可以通过添加,删除,修改表的列来修改表的定义。

        1. 例如给Friend表添加一个 名为Address的新列:

          ALTER TABLE Friend ADD Address VARCHAR(30); 

        2.一次添加多个列:

          ALTER TABLE Friend ADD Email VARCHAR(30),IGR VARCHAR(25);

        3.重命名:

          ALTER TABLE Friend RENAME NewFriend;

        4.修改列的属性:

          ALTER TABLE 表名 MODIFY COLUMN 列名 要修改的数据类型

        5.修改列名:

          ALTER TABLE 表名 CHANGE 原列名 新列名+数据类型

        6.中间加列:

          ALTER TABLE 表名 ADD 列+数据类型 AFTER 列名

        6.删除列:

           ALTER TABLE 表名 DROP.COLUMN 要删的列名

   *管理索引

   注意:有了索引后,查询速度会变快,但当修改表时,会降低速率,所以索引要适可而止的用

       创建索引:

            ^创建索引的关键字:CREATE INDEX 

                 CREATE INDEX <索引名> ON <表名> (<列名一>,[<列名二>],...);            [此为创建的非唯一索引]

                 CREATE UNIQUE INDEX <索引名> ON <表名> (<列名一>);             [唯一索引]

            ^删除索引:

                 ALTER TABLE 表名 DROP INDEX 列名索引

            ^索引:从左往右匹配

 

                                 保证数据完整性

3.1数据库完整性概述

    * 数据完整性的重要性:防止储存垃圾数据,提高数据库的执行效率     

    *数据完整性实施的方法:

       实体完整性(针对每一行有效)  主键约束(行)    唯一约束(列)

       域完整性(针对每一列有效)      非空约束     默认约束

       引用完整性(引用的编号有效)

       用户自定义完整性(保证自定义规则) 

   *创建非空约束   

       ^不允许在Name和PhoneNo列上输入NULL值得语法为:

          CREATE TABLE Friend (

             Name VARCHAR(40) NOT NULL,

             PhoneNo VARCHAR(30) NOTNULL); 

  *主键约束(Primary Key Constraint):默认情况下,不会为空;只用一次;为非空约束

         法一:

         CREATE TABLE afterClass(
id INT NOT NULL,
NAME VARCHAR(20),
sex CHAR(2),
CONSTRAINT myprimary PRIMARY KEY (NAME)
 );

         法二:

         CREATE TABLE afterClass(
id INT NOT NULL,
NAME VARCHAR(20),
sex CHAR(2),
PRIMARY KEY(id)
 );

         法三:

          CREATE TABLE afterClass(
id INT NOT NULL PRIMARY KEY,
NAME VARCHAR(20),
sex CHAR(2)
 ); 

    *唯一约束:可以用多次,可以为空约束

        法一:

       唯一约束和默认约束:

        CREATE TABLE afterClass(
id INT NOT NULL PRIMARY KEY,
NAME VARCHAR(20),
sex CHAR(2),
photonum INT UNIQUE DEFAULT 128900
 );    


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章