上文中我們學習了如何建立資料庫,本文將簡述建立表和修改表及常見約束的設定。
語法:create table 表名(《列名1>《列的資料型別》,《列名2>《列2的資料型別》《列名n>《列n的資料型別》)
如:在公司資料庫中,建立員工資訊表,id,姓名,性別,年齡,家庭住址,**如下:
use company;
create table t_employer (id int primary key,emp_name varchar(20),gender int,age int,address varchar(50));
執行結果如下:
我們可以看到在company資料庫中有乙個表t_employer;
我們可以通過 desc 表名檢視表的資訊
在表建立完成後,有時候需要新增一行。我們在mysql中使用alter來修改表的結構。
插入列:
語法:alter table 表名 add 列名 列的資料型別;
例如在員工表中新增乙個**號碼列:
更改列:語法:alter table 表名 change 原列名 新列名 資料型別;
例如:我們想要性別是』男』,'女』顯示的
alter table t_employer change gender gender char(2);
刪除列:語法:alter table 表名 drop 列名
如:我們並不需要age列,則:
alter table t_employer drop age;
更改表名:語法:alter table 表名 rename 新錶名
如:我想把t_employer改為t_employee
alter table t_employer rename t_employee;
刪除表:語法:drop table 表名
當我們不要某個表時,刪除表
如:刪除員工表
drop table t_employee;
為了保證資料的完整性,mysql中採用約束來對列的資料進行規範,主要有主鍵約束、唯一約束、非空約束、預設約束、外來鍵約束、引用約束。
主鍵約束:
主鍵是為了唯一標示一條資料,主鍵類的值唯一且不為空。建議使用id作為主鍵,主鍵不具有業務意義。
設定主鍵約束:
1、在建立表時,在要設定主鍵的列的資料型別後+primary key
如:
create table t_custorm (id int primary key,cus_name varchar(20),tel int);
2、在建立表時,在列的末尾寫primary key(列名)
create table t_custorm (id int ,cus_name varchar(20),tel int,primary key(id));
3.對於建立了表,但未設定主鍵的表,可用alter新增主鍵約束
alter table t_custorm add primary key(id);
唯一約束唯一約束,表示表內這個列的值唯一,不可重複。
可在建立表時新增唯一約束,使用unique關鍵字
create table t_custorm (id int ,cus_name varchar(20),tel int unique,primary key(id));
可在表建立完成之後新增:
alter table 表名 add unique(列名)
alter table t_custorm add unique(tel);
客戶表的**號碼唯一
非空約束
非空約束,限制欄位的值不能為空。
使用not null關鍵字,在建立表時:
create table t_custorm (id int ,cus_name varchar(20) not null,tel int unique,primary key(id));
客戶表的姓名不為空
表建立好之後新增:
alter table 表名 change 原列名 新列名 資料型別 not null;
alter table t_custorm change cus_name name varchar(20) not null;
刪除非空約束:
alter table 表名 change 原列名 新列名 資料型別 ;
alter table t_custorm change cus_name name varchar(20) ;
預設約束在某些時候,可以不設定值,但缺省會新增,這時候使用default關鍵字即可
建立表時設定:
create table t_custorm (id int ,cus_name varchar(20) not null,gender int default 0,tel int unique,primary key(id));
表已建立完成設定:
alter table 表名 change 原列名 新列名 資料型別 default 預設值 ;
刪除預設約束與非空約束一致:
設定性別預設為0
外來鍵約束
生活中我們需要乙個表中的字段引用另乙個表的主鍵,這個時候需建立外來鍵約束。
外來鍵約束建立的條件時兩個表中的字段型別一致。
1、建立表示建立外來鍵:
foreign key(列名) references 主表名稱(主鍵列名)
2、建立完成的表新增外來鍵
alter table 表名 add foreign key(列名) references 主表名稱(主鍵列名);
刪除外來鍵約束:
alter table 表名 drop foreign key 列名;
3 mysql學習之資料庫定義語句
資料定義語句包括alter database alter table create database create index create table drop database drop index drop table rename table語法 一 alter database語法 常見的...
mysql的資料庫定義 MySQL的資料庫定義語法
建立資料庫 在mysql中,使用 create database 或 create schema 語句建立資料庫 語法結構 create if not exists db name default character set charest name default collate collatio...
HiveQL資料定義之資料庫
資料定義語言部分,用於建立 修改和刪除資料庫 表 檢視 函式和索引。create database dba 如果資料庫dba已經存在的話,將會丟擲乙個錯誤資訊。避免出現這種情況可以使用 create database if not exists dba show databases 如果資料庫比較多...