MySQL之alter語句用法總結

2021-09-10 17:37:36 字數 3259 閱讀 9840

1:刪除列

alter table 【表名字】 drop 【列名稱】

2:增加列

alter table 【表名字】 add 【列名稱】 int not null  comment '注釋說明'

3:修改列的型別資訊

alter table 【表名字】 change 【列名稱】【新列名稱(這裡可以用和原來列同名即可)】 bigint not null  comment '注釋說明'

4:重新命名列

alter table 【表名字】 change 【列名稱】【新列名稱】 bigint not null  comment '注釋說明'

5:重新命名表

alter table 【表名字】 rename 【表新名字】

6:刪除表中主鍵

alter table 【表名字】 drop primary key

7:新增主鍵

alter table sj_resource_charges add constraint pk_sj_resource_charges primary key (resid,resfromid)

8:新增索引

alter table sj_resource_charges add index index_name (name);

9: 新增唯一限制條件索引

alter table sj_resource_charges add unique emp_name2(cardnumber);

10: 刪除索引

alter table tablename drop index emp_name;

11:聯合唯一索引

alter table tablename add unique index index_name  (school_id, settlement_time);

alter ignore table tablename add unique index(user_id,user_name);它會刪除重複的記錄(別怕,會保留一條),然後建立唯一索引,高效而且人性化.(慎用)

mysql建立、刪除、重建和檢視索引命令總結如下:

1、建立索引(primary key,index,unique)

mysql>alter table tbl_name add index index_name (column list);

mysql>alter table tbl_name add unique index_name (column list);

mysql>alter table tbl_name add primary key index_name (column list);

2、刪除索引(primary key,index,unique)

mysql>alter table tbl_name drop index index_name (column list);

mysql>alter table tbl_name drop unique index_name (column list);

mysql>alter table tbl_name drop primary key index_name (column list);

3、重建索引

mysql> repair table tbl_name quick;

4、檢視某個資料表的索引

mysql> show index from tbl_name;

轉 :-->建立表時指定auto_increment自增值的初始值:

mysql>create table bin_tbl (id int(5) primary key auto_increment)auto_increment=100;

-->通過alter table 修改初始值(但要大於表中的auto_increment自增值,否則設定無效):

mysql>atler table bin_tbl auto_increment=100;

-->如果自增序列的最大值被刪除了,則在插入新記錄時,該值被重用。

就是說如果表中原本有auto_increment屬性值連續為78、100的值,但100這個資料被刪除了,下此再新增資料的時候自增值為101,100被重用了。

即使在你將整個表中的所有資料delete清空後,之前的自增序列最大值還是會被重用。解決辦法是:

使用atler table bin_tbl auto_increment=0;重新設定自增初始值。

-->設定auto_increment_increment以及auto_increment_offset使用者變數值:(重啟mysql之後,這些修改會恢復為初始值1)

mysql>set auto_increment_increment=10;      #自增量每次增加的值改為10,

mysql>set auto_increment_offset=2;             #第一次載入數值時的偏移值的個位值

mysql>show variables like 'auto_inc%'; #檢視修改後變數的值

【mark】

抽空要看下關於nysql全域性變數、本地會話變數的內容。

plus:

mysql>show table status from name_db;-->顯示資料庫name_db中所有表的資訊

mysql>show create table name_tbl;        -->顯示表name_tbl建立時的資訊

mysql>show variables like 'auto_inc%'   -->顯示mysql的auto_inc開頭的使用者會話變數(show global variables)

+--------------------------+-------+ 

| variable_name                 | value | 

+--------------------------+-------+ 

| auto_increment_increment|   1      | 

| auto_increment_offset      |   1      | 

+--------------------------+-------+

-->更改表中字段的名字、屬性等:

mysql>alter table nale_tbl col_name col_new_name varchar(20) [else...]; #將表中字段col_name改名為col_new_name

MySQL之alter語句用法總結

mysql之alter語句用法總結 1 刪除列 alter table 表名字 drop 列名稱 2 增加列 alter table 表名字 add 列名稱 int not null comment 注釋說明 3 修改列的型別資訊 alter table 表名字 change 列名稱 新列名稱 這裡...

MySQL之alter語句用法總結

1 刪除列 alter table 表名字 drop 列名稱 2 增加列 alter table 表名字 add 列名稱 int not null comment 注釋說明 3 修改列的型別資訊 alter table 表名字 change 列名稱 新列名稱 這裡可以用和原來列同名即可 bigint...

MySQL之alter語句用法總結

1 刪除列 alter table 表名字 drop 列名稱 2 增加列 alter table 表名字 add 列名稱 int not null comment 注釋說明 3 修改列的型別資訊 alter table 表名字 change 列名稱 新列名稱 這裡可以用和原來列同名即可 bigint...