mysql 表的操作 mysql 表的操作

2021-10-22 05:13:37 字數 3171 閱讀 5317

建立表、檢視表結構、修改表、刪除表

1. 建立表

建立表之前選定資料庫:use testx;

create table table2(屬性名 資料型別 [約束],

屬性名 資料型別 [約束]

約束:primary key              該屬性/欄位設為此表主鍵

foreign key              該屬性/欄位為該表外來鍵,即另乙個表的主鍵

not null                     屬性不能為空

unique                         屬性值唯一

auto_increment     屬性值自動增加

default                       屬性值為預設值

(1)設定主鍵

①設定單個字段為主鍵

create table table2( id int primary key,

name varchar(20)

②設定多個字段為主鍵

create table table2( id1 int,

id2 int,

name varchar(20),

primary key(id1,id2)

通過多個主鍵組合確定唯一的記錄

(2)設定外來鍵

表a有乙個欄位是表b的主鍵,則b為父表,a為子表。

子表的外來鍵關聯的必須是父表的主鍵,且資料型別必須一致

建立了table2,有兩個主鍵id1、id2,將這兩個字段作為表table3的外來鍵

create table table2( id1 int,

id2 int,

name varchar(20),

address varchar(20),

primary key(id1,id2)

create table table3( id int primary key,

id1 int,

id2 int,

constraint ids foreign key(id1,id2) references table2(id1,id2)

(3)自動增加屬性

該欄位必須是主鍵的一部分,乙個表只能有乙個字段(必須是整數型別)使用 auto_increment 約束。

每插入一條資料,該字段為上條記錄該字段值增1

create table table4( id int primary key auto_increment,

name varchar(20)

插入資料:

①該字段值填 null或0,則該字段值為上條記錄該欄位值加1

②該欄位插入非0數,則該字段值就是插入的值

③插入資料時,不指定該欄位

(4)設定字段預設值

屬性名  資料型別 default 預設值

2.  檢視表結構

(1)desc 表名

(2)檢視表詳細結構

檢視欄位名、資料型別、約束、儲存引擎、字元編碼

3. 修改表

(1)修改表名

alter table 舊表名 rename 新錶名;

(2)修改資料型別

整型、浮點、字串、二進位制、日期時間型別

資料型別決定了資料的儲存格式、約束、有效範圍

alter table 表名 modify 屬性名 資料型別;

(3)修改欄位名

alter table 表名 change 舊屬性名 新屬性名 資料型別;

可修改欄位名的同時修改資料型別

(4)增加字段

alter table 表名 add 屬性1 資料型別 [約束] [first | after 屬性2];

(5)刪除字段

alter table 表名 drop 屬性名;

(6)修改欄位的位置

alter table 表名 modify 屬性名1 資料型別 first | after 屬性名2;

(7)修改儲存引擎

alter table 表名 engine=訪問引擎名;

(8)刪除表的外來鍵約束(當然是對子表操作)

alter table 表明 drop foreign key 外來鍵別名;

4. 刪除表

(1)刪除沒有被關聯的普通表

drop table 表名;

(2)刪除被其它表關聯的父表

在1的(2)建立了兩個表,table2為父表,table3為子表

嘗試刪除父表:drop table table2;

檢視子表結構:子表table3通過外來鍵 ids與父表table2建立關聯

要刪除父表table2,則需要先刪除子表table3中的外來鍵約束:3的(8)

alter table table3 drop foreign key ids;

標籤:table2,mysql,資料型別,table,操作,table,alter,屬性

mysql操作表 MySQL表的操作(一)

在建立表之前,首先要指明表在哪個資料庫中建立,也就是要指明命令所要操作的資料庫 用use語句選擇資料庫,一般格式 use 資料庫名 建立表的語法格式如下 例如選擇在linda資料庫中建立乙個use1表 use linda create table use1 id int,name varchar 2...

mysql表操作約束 MySQL操作表的約束

完整性 指資料庫的準確性和一致性。約束 是在表中定義的用於維護資料庫完整性的一些規則。主鍵 給某乙個欄位來唯一標識所有記錄,值是唯一的,非空的 外來鍵 多個表之間參照的完整性。一 設定非空約束 use教學管理資料庫 show tables create table專業表 專業編號char 3 not...

mysql表的操作

mysql資料庫是乙個資料庫管理系統 dbms database 常用儲存引擎有innodb和memory。表 行和列的集合 字段 表的列。索引 單獨的 物理的資料庫結構,相當於查字典時的字母。1.建立資料庫的命令 create schema mydb de t characher set utf8...