mysql的alter用法總結

2021-08-27 09:27:18 字數 1714 閱讀 8170

當表被建立後,在使用過程中可能會有一些新的需求,這時候可能需要修改表的結構。如果表中已經填充了資料,重新建表會造成現有資料的丟失,為此可以用alter table對錶結構進行修改

向表中新增列的前提是所新增的列允許使用null值或者對該列使用default約數指定了預設的值。

alter table $tablename add  $column_name $object_type [null|not null default "預設值"];
引數解釋:

tablename:需要新增欄位的表名稱

column_name:新增的列名

object_type:新增列的資料型別

:新增列的預設值

向乙個表新增新列時,資料庫引擎會在該列中為表中的每個現有資料行插入乙個值。因此,在向表中新增列時為指定default定義會很有用。如果新列沒有default定義,則必須指定該列允許null值,資料庫引擎將null值插入該列。如果不允許null值,則返回錯誤。

在刪除一列之前,必須先刪除任何引用該列的約束、預設表示式、計算列表示式或索引

alter table $tablename change $old_column_name $new_column_name $column_type;
修改列名

截圖中的錯誤是因為修改列明是沒有指定資料型別,所以$column_type是必須引數

修改列的資料型別

命令

alter table $table_name add index $index_name($column_name1,$colunm_name2)
引數解釋:

$index_name:建立索引的名稱

$column_name[1|2]:需要建立索引的欄位名

示例操作

命令

alter table $table_name drop index $index_name;
示例操作

《鋒利的sql》

mysql的alter用法總結

注意 一般情況下,不推薦在建表後對錶進行大幅度修改,大幅度修改極有可能使表資料丟失。因此需要修改之前一定要對錶做好資料備份 刪除列 alter table 表名 drop column 列名 增加列 alter table 表名 add column 列名 屬性 約束 修改列的型別資訊 alter ...

MySQL之alter語句用法總結

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

mysql練習之Alter用法總結

mysql練習之alter用法總結 alert 用法總結 alter database語法 alter database用於更改 資料庫的全域性特性。這些特性儲存在資料庫目錄中的db.opt檔案中。要使用alter database,您需要獲得資料庫alter許可權。character set子句用...