mysql基本操作擴展

約束:

not null:非空約束,指定某列不爲空

unique: 唯一約束,指定某列和幾列組合的數據不能重複

primary key:主鍵約束,指定某列的數據不能重複、唯一

foreign key:外鍵,指定該列記錄屬於主表中的一條記錄,參照另一條數據

check:檢查,指定一個表達式,用於檢驗指定數據

Not null

create table  temp(        

id int not  null,        

name varchar(255)  not null default ‘abc’,        

sex char null

)

Unique

create table temp  (        

id int not  null,        

name  varchar(25),        

password  varchar(16),

constraint  uk_name_pwd unique(name)

);

Primary key

create table temp (         

id int primary  key,        

name  varchar(25),        

password varchar(16)

);

 

設置主鍵自增:auto_increment

create table temp  (        

id int  auto_increment primary key,        

name  varchar(25),        

password varchar(16)

);

 

foreign key:

建立在兩表或多張表中的關聯關係,以保證數據完整性

注意:1.子表參照的值必須在主表被參照字段的值的範圍內

      2.如果主表中有值被參照,那麼主表中的相應記錄不能被刪除

      3.子表的外鍵參照的列只能是主表的主鍵列或唯一約束的列

 

CREATE TABLE  student(

    sid INT PRIMARY KEY auto_increment,

    sname VARCHAR(20),

    scid INT,

   

    -- FOREIGN KEY (scid) REFERENCES class(cid)

 

    CONSTRAINT fk_scid FOREIGN key(scid)  REFERENCES class(cid)

 

)ENGINE=INNODB;

 

DROP TABLE student;

DROP TABLE class;

 

語法1: FOREIGN KEY (外鍵字段) REFERENCES 主表(主鍵字段);

語法2: CONSTRAINT 外鍵名 FOREIGN KEY (外鍵字段) REFERENCES 主表(主鍵字段);

(外鍵名:fk_字段名)

---------------------------

ENGINE : 引擎

 

mysql所特有一種數據存儲機制

Check(MySQL數據庫中,沒有作用)

CREATE TABLE  STUDENT(

SID INT PRIMARY KEY,

SNAME VARCHAR(20) NOT NULL,

SSEX CHAR(1),

SAGE INT check( sage<19)

)

  建表後操作表表結構:

查看錶結構:

DESC 表名;

mysql> desc student;

修改列類型:

alter TABLE 表名 MODIFY 列名 目標類型;

mysql> ALTER TABLE student MODIFY sid VARCHAR(10);

增加列:

alter TABLE 表名 ADD 列名 類型;

mysql>alter TABLE student ADD sage int;

刪除列:

alter TABLE 表名 DROP 列名;

mysql> alter table student drop sname;

修改列名:

alter TABLE 表名 CHANGE 舊列名 新列名 類型;

mysql> ALTER TABLE student CHANGE aaa bbb INT;

修改表名:

語法1:

ALTER TABLE 表名 RENAME 新表名;

語法2:

RENAME TABLE 舊錶名 TO 新表名;

mysql> alter table student rename stu;

mysql> rename table student to stu;


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