mysql基本操做擴展

約束:mysql

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

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

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

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

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

Not nullrem

create table  temp(         it

id int not  null,         table

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

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;

相關文章
相關標籤/搜索