您好,登錄后才能下訂單哦!
下面一起來了解下操作mysql數(shù)據(jù)庫表的基本方法,相信大家看完肯定會(huì)受益匪淺,文字在精不在多,希望操作mysql數(shù)據(jù)庫表的基本方法這篇短內(nèi)容是你想要的。
表示數(shù)據(jù)庫存儲(chǔ)數(shù)據(jù)的基本單位,由若干個(gè)字段組成,主要用來存儲(chǔ)數(shù)據(jù)記錄,表的操作是增刪改查,這是最基本的操作,也是最重要的操作
語法create table 表名
(字段1 類型[(寬度) 約束條件],
字段n 類型[(寬度) 約束條件]
);
在同一張表中字段名不能相同
寬度和約束條件是可選的
字段名和類型是必須的
實(shí)例:
Use school
Create table student
(name char(10),
Sex char(8),
Age int(3),
Password varchar(50)
);
Describe 表名;
Desc 表名;
Show create table 表名; //查看表詳細(xì)結(jié)構(gòu)
關(guān)鍵字primkary key 主鍵, 唯一標(biāo)識(shí)的一個(gè)記錄
Foreign key 外鍵 ,做關(guān)聯(lián)
No null 非空
Unique key 唯一約束,這本身就是一個(gè)索引
Default 默認(rèn)值
Auto_increment 自增長(zhǎng)
實(shí)例:
Use school
Create table student
(name char(10) not null,
Sex enum (‘male’,’female’), default ‘male’ not null
Age int unsigned not null default 18, //unsigned修飾值必須為正值
Hobby set (‘music’,’book’,’disc’) default ‘book,disc’
);
設(shè)置唯一約束實(shí)例:unique
Create table departtment(
Dept_id int,
Dept_name varchar(30) unique,
Comment varchar(50)
);
設(shè)置主鍵約束實(shí)例:primary key非常重要,唯一標(biāo)識(shí)符,這本身就是一條索引
使用單列做主鍵
Create table departtment(
Dept_id int primary key,
Dept_name varchar(30) ,
Comment varchar(50)
);
使用多列做主鍵,也就是復(fù)合主鍵,也就是說這兩個(gè)共同一起是不能有相同的數(shù)據(jù)的
Create table departtment(
Dept_id int ,
Dept_name varchar(30),
Comment varchar(50),
Constraint pk_id_name primary key (dept_id,dept_name)
);
設(shè)置自增長(zhǎng)auto_increment 自增長(zhǎng)通常都是配合主鍵共同使用的,而且這個(gè)字段必須是整數(shù)類型才行
Create table student(
Dept_id int primary auto_increment,
Dept_name varchar(30),
Comment varchar(50)
);
設(shè)置外鍵約束foreign key主要做表的關(guān)聯(lián),這里就涉及到父子表的概念,外鍵必須要存儲(chǔ)引擎來支撐的,所以必須要確保存儲(chǔ)引擎是innodb才行
實(shí)例
父表
Create table empolyees(
Name varchar(20) not null,
Mail varchar (20),
Primary key (name)
)engine=innodb;
子表
Create table pryroll(
Id int(5) not null,
Name varchar(20) not null,
Payroll float (10,2) no null,
Primary key (id),
Constraint fk_name foreign key (name) references employees (name)
on udate cascade
on delete cascade //字表中的name跟employees 表的name字段關(guān)聯(lián),并且同步刪除更新,父表中有那個(gè)人,子表中才能夠插入,不然是不行的
)engine=innodb;
修改表名
Alter table 舊表名 rename 新表名
實(shí)例:
Alter table stu rename student; //將stu表改名為student
Alter table student engine=myisam; //修改student表的存儲(chǔ)引擎為myisam
增加字段
Alter table 表名
Add字段名 數(shù)據(jù)類型 [完整性約束條件.....],
Add字段名 數(shù)據(jù)類型 [完整性約束條件.....];
默認(rèn)情況下新增加的字段是放在所有字段后面的
實(shí)例:
Alter table student
Add name varchar(30) not null,
Add age int not null;
Alter table 表名
Add字段名 數(shù)據(jù)類型 [完整性約束條件.....] first;
實(shí)例:
Add stu_num varchar(30) not null first;
Alter table 表名
Add字段名 數(shù)據(jù)類型 [完整性約束條件.....] after 字段名;
實(shí)例:
Add passord varchar(30) not null after name;
刪除字段
Alter table 表名 drop 字段名;
實(shí)例:
Alter table student drop stu_num;
修改字段
Alter table 表名 modify 字段名 數(shù)據(jù)類型 [完整性約束條件......]; //只能針對(duì)舊有的字段操作只能改名
Alter table 表名 change 舊字段名 新字段名 舊數(shù)據(jù)類型 [完整性約束條件......];
一般用這個(gè)
實(shí)例:
Alter table student change name stu_name varchar(30);
Alter table 表名 change 舊字段名 新字段名 新數(shù)據(jù)類型 [完整性約束條件......];
實(shí)例:
Alter table student change stu_name name varchar(50) not null;
刪除表
Drop table 表名;
實(shí)例:
Drop table student
看完操作mysql數(shù)據(jù)庫表的基本方法這篇文章后,很多讀者朋友肯定會(huì)想要了解更多的相關(guān)內(nèi)容,如需獲取更多的行業(yè)信息,可以關(guān)注我們的行業(yè)資訊欄目。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。