我們直接向表中新增自增的非主鍵字段時會報錯,錯誤資訊如下:
該資訊提示我們設為自增的字段必須作為鍵(並非一定是主鍵)。
所以我們可以這樣做:
(1)先新增字段,設定字段型別等基本屬性:
alter table tbl_test add test_column integer(10) not null ;
(2)為該字段新增任意key:
alter table tbl_test add key test(test_column); // test為任意的key名稱
(3)將該字段修改為自增屬性:
alter table tbl_test modify test_column bigint(20) auto_increment
然後我們就可以發現該欄位已經符合我們的要求:
MySQL設定主鍵自增和非主鍵自增
mysql 每張表只能有1個自動增長字段,這個自動增長字段即可作為主鍵,也可以用作非主鍵使用,但是請注意將自動增長字段當做非主鍵使用時必須必須為其新增唯一索引,否則系統將會報錯。例如 將自動增長字段設定為主鍵 create table t1 id int auto increment primary...
java非資料庫自增的主鍵
在實際的使用中發現不是所有表設計都是使用例如mysql的自增來完成的 我在使用oracle中發現沒法很好的使用其自增來完成主鍵,所以這邊我自己簡單的設計了一套主鍵的生成規則 head yyyymmddhhmmsssss 主鍵標識 4位樹 其中主鍵標識 放置在配置檔案中 是多機使用的 區別那台機器生成...
Oracle資料庫主鍵自增
在學習mysql時,我們很容易通過auto increment就能實現主鍵自增的功能,但是在oracle資料庫中,是沒有這個關鍵字的,所以也不能通過這樣來實現主鍵自增。下面我就為大家介紹兩種實現主鍵自增的方法。兩種方法的基礎都有乙個概念就是序列 sequence 的概念,一種是利用序列和顯式呼叫的方...