萬盛學電腦網

 萬盛學電腦網 >> 數據庫 >> mysql教程 >> MySQL添加刪除主鍵的方法

MySQL添加刪除主鍵的方法

   mysql添加刪除主鍵操作是非常基本的操作,下面就將教您mysql添加刪除主鍵的方法,如果您是剛剛接觸mysql數據庫的新人,不妨一看。

  修改mysql的字符集:

  在安裝mysql5.0時可以設置好mysql的字符集,一般使用utf8的字符集

  1、查看建立表“tablename”的sql語句

  Show create table tablename;//查看建立表“tablename”的sql語句

  | maos_mail_batch | CREATE TABLE `maos_mail_batch` (

  `ID` varchar(32) character set latin1 NOT NULL,

  `BATCH_TIME` varchar(30) character set latin1 NOT NULL,

  `BATCH_INTRODUCE` varchar(2000) character set latin1 default NULL,

  `BATCH_SUM` int(11) default NULL,

  `BATCH_STATE` varchar(1) character set latin1 default NULL,

  PRIMARY KEY (`ID`)

  ) ENGINE=MyISAM DEFAULT CHARSET=utf8 |

  2、修改數據庫和表的字符集

  alter database maildb default character set utf8;//修改數據庫的字符集

  alter table mailtable default character set utf8;//修改表的字符集

  如果您想要把表默認的字符集和所有字符列(CHAR, VARCHAR, TEXT)改為新的字符集,應使用如下語句:

  ALTER TABLE tbl_name CONVERT TO CHARACTER SET charset_name;

  警告:前面的操作轉換了字符集之間的列類型。如果您有一列使用一種字符集(如latin1),但是存儲的值實際上使用了其它的字符集(如utf8),這種情況不是您想要的。此時,您必須對這樣的列進行以下操作。

  ALTER TABLE t1 CHANGE c1 c1 BLOB;

  ALTER TABLE t1 CHANGE c1 c1 TEXT CHARACTER SET utf8;

  這種方法能夠實現此功能的原因是,當您轉換到BLOB列或從BLOB列轉換過來時,並沒有發生轉換。

  3、mysql的主鍵問題:

  Mysql的兩種主鍵。Primary key 和not null auto_incriment在建立mysql表時,給一個字段添加了主鍵primary key 在insert數據時可以不用insert主鍵,mysql會自動添加0,但是在第二次insert時沒有填寫值mysql數據庫還是默認添加0,會導致有重復的主鍵,這是不可以的。所有在定義了primary key時,在insert數據時要給主鍵填寫值。

  在建立mysql表時,給一個字段添加了主鍵not null auto_increment=1;

  這也是一個主鍵。時自增長的以1為開始。這個字段是可以不用填寫值的,mysql數據庫會自動給填寫值,不會出現primary key的狀況。

  Alter table tb add primary key(id);

  Alter table tb change id id int(10) not null auto_increment=1;

  4、刪除自增長的主鍵id

  先刪除自增長在刪除主鍵

  Alter table tb change id id int(10);//刪除自增長

  Alter table tb drop primary key;//刪除主建

  以上就是mysql添加刪除主鍵的方法介紹。

copyright © 萬盛學電腦網 all rights reserved