日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

SQL alter操作

發(fā)布時(shí)間:2023/12/9 数据库 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 SQL alter操作 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

?

#創(chuàng)建表

CREATE TABLE IF NOT EXISTS TABLLE_NAME(

?? tutorial_id INT NOT NULL AUTO_INCREMENT,

?? tutorial_title VARCHAR(100) NOT NULL,

?? tutorial_author VARCHAR(40) NOT NULL,

?? submission_date DATE

?? PRIMARY KEY ( tutorial_id )

?

)

#查看數(shù)據(jù)表

SHOW TABLES FROM `smbms`

?

#查看表結(jié)構(gòu)

SHOW COLUMNS FROM `smbms_address`

?

#插入一條記錄,如果省略列名和字段名,所有的值都賦值

INSERT INTO (col_name,....)VALUES(val,....);

?

#修改數(shù)據(jù)表(添加單字段)

ALTER TABLE tab_name ADD [COLUMN] col_name column_definition [FIRST|AFTER col_name]

#修改表示例(添加單字段)

ALTER TABLE smbms_bill ADD userName INT(2) DEFAULT 22 NOT NULL AFTER productName;

?

#修改表添加多列字段

ALTER TABLE tab_name ADD [COLUMN] (col_name column_definition,.....)

ALTER TABLE smbms_bill ADD(person VARCHAR (10) DEFAULT 24,address VARCHAR (25));

?

#刪除表字段

ALTER TABLE tab_name DROP [COLUMN] col_name

ALTER TABLE smbms_bill DROP age;

?

#同時(shí)刪除多列

ALTER TABLE smbms_bill DROP address,DROP userName;

?

#刪除一列的同時(shí)在新增一列

ALTER TABLE smbms_bill DROP userName,ADD age INT(2) NOT NULL DEFAULT 22;

?

#添加主鍵約束

ALTER TABLE tab_name ADD [CONSTRAINT[symbol]] PRIMARY KEY [index_type](index_col_name);

ALTER TABLE t_user ADD CONSTRAINT PK_t_user_uid PRIMARY KEY(uid);

?

#添加唯一約束

ALTER TABLE tab_name ADD [CONSTRAINT[symbol]] UNIQUE [INDEX|KEY] [index_name] [index_type](index_col_name);

ALTER TABLE t_user ADD UNIQUE (user_name);#user_name 要加括號(hào)

?

#添加外鍵約束

ALTER TABLE tab_name ADD [CONSTRAINT[symbol]] FOREIGN KEY [index_name](index_col_name,...) reference_definition

#外鍵添加要求(相同的數(shù)據(jù)類型與長(zhǎng)度,varchar除外,引擎是innoDB,字段上要有索引)

ALTER TABLE t_user2 ADD FOREIGN KEY (pid) REFERENCES t_user (uid);

?

#添加/刪除默認(rèn)約束

ALTER TABLE tal_name ALTER [COLUMN] col_name {SET DEFAULT literal|DROP DEFAULT}

#添加默認(rèn)約束

ALTER TABLE t_user ALTER user_name SET DEFAULT 'zhangsan';

#刪除默認(rèn)約束

ALTER TABLE t_user ALTER user_name DROP DEFAULT;

?

#刪除主鍵約束(因?yàn)橹麈I約束只有一個(gè)所以不用寫字段名)

ALTER TABLE tal_name DROP PRIMARY KEY

ALTER TABLE t_user2 DROP PRIMARY KEY;

?

#刪除唯一約束

ALTER TABLE tab_name DROP {INDEX|KEY}index_name

#首先應(yīng)查看數(shù)據(jù)表的唯一約束名字

SHOW INDEX FROM t_user

#刪除唯一約束

ALTER TABLE t_user DROP INDEX user_name;

?

#刪除外鍵約束

ALTER TABLE tal_name DROP FOREIGN KEY fk_symbol

#查看外鍵約束獲取外鍵的名字,這里是(`t_user2_ibfk_1`)

SHOW CREATE TABLE t_user2

#刪除外鍵

ALTER TABLE t_user2 DROP FOREIGN KEY `t_user2_ibfk_1`;

?

#修改列定義(修改字段類型|名稱|位置)

ALTER TABLE tal_name MODIFY [COLUMN] col_name column_definition [FIRST|AFTER col_name]

#將user_name移到第一位(如果user_name有默認(rèn)值要寫默認(rèn)值,如果不為空,要寫not null)

ALTER TABLE t_user MODIFY user_name VARCHAR(10) FIRST;

#將uid修改成TINYINT類型(在修改型的時(shí)候如果從大類型修改到小類型,有可能造成數(shù)據(jù)的丟失)

ALTER TABLE t_user MODIFY uid TINYINT (2);

#將uid修改列名稱為u_id,類型修改為int

ALTER TABLE t_user CHANGE uid u_id INT(2);

#修改表字段

alter table `t_user2` change user_name uid int(4) not null,change address int(4) not null;

?

#數(shù)據(jù)表更名

#方法一:

ALTER TABLE tal_name RENAME[TO|AS] new_tbl_name

#方法二:

RENAME TABLE tbl_name TO new_tbl_name[tbl_name2 TO new_tbl_name2]....

#將t_user修改成t_user3

ALTER TABLE t_user RENAME TO t_user3

#將t_user3修改成t_user?

RENAME TABLE t_user3 TO t_user

?

?

總結(jié)

以上是生活随笔為你收集整理的SQL alter操作的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。