SQL alter操作
?
#創建表 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 ) ? ) #查看數據表 SHOW TABLES FROM `smbms` ? #查看表結構 SHOW COLUMNS FROM `smbms_address` ? #插入一條記錄,如果省略列名和字段名,所有的值都賦值 INSERT INTO (col_name,....)VALUES(val,....); ? #修改數據表(添加單字段) 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; ? #同時刪除多列 ALTER TABLE smbms_bill DROP address,DROP userName; ? #刪除一列的同時在新增一列 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 要加括號 ? #添加外鍵約束 ALTER TABLE tab_name ADD [CONSTRAINT[symbol]] FOREIGN KEY [index_name](index_col_name,...) reference_definition #外鍵添加要求(相同的數據類型與長度,varchar除外,引擎是innoDB,字段上要有索引) ALTER TABLE t_user2 ADD FOREIGN KEY (pid) REFERENCES t_user (uid); ? #添加/刪除默認約束 ALTER TABLE tal_name ALTER [COLUMN] col_name {SET DEFAULT literal|DROP DEFAULT} #添加默認約束 ALTER TABLE t_user ALTER user_name SET DEFAULT 'zhangsan'; #刪除默認約束 ALTER TABLE t_user ALTER user_name DROP DEFAULT; ? #刪除主鍵約束(因為主鍵約束只有一個所以不用寫字段名) ALTER TABLE tal_name DROP PRIMARY KEY ALTER TABLE t_user2 DROP PRIMARY KEY; ? #刪除唯一約束 ALTER TABLE tab_name DROP {INDEX|KEY}index_name #首先應查看數據表的唯一約束名字 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有默認值要寫默認值,如果不為空,要寫not null) ALTER TABLE t_user MODIFY user_name VARCHAR(10) FIRST; #將uid修改成TINYINT類型(在修改型的時候如果從大類型修改到小類型,有可能造成數據的丟失) 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; ? #數據表更名 #方法一: 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 |
?
?
總結
以上是生活随笔為你收集整理的SQL alter操作的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ST_LINK/V2 SWIM和SWD、
- 下一篇: 2016第七届蓝桥杯省赛C/C++ B组