我有一個表'rack',在插入第一個值的時候,primary_key(列名:rack_db_key)的值爲'0'。 儘管主鍵初始化爲標識(1,1),但值仍從0開始。從0開始的表的主鍵
如何才能使它從1開始?
我有一個表'rack',在插入第一個值的時候,primary_key(列名:rack_db_key)的值爲'0'。 儘管主鍵初始化爲標識(1,1),但值仍從0開始。從0開始的表的主鍵
如何才能使它從1開始?
您的主鍵列初始值設置爲1(我希望rack_db_key是自動遞增列)
$sql = "ALTER TABLE MY_TABLE AUTO_INCREMENT = 1";
如果你的列rack_db_key不自動增量比你可以用下面的查詢
$sql = "ALTER TABLE MY_TABLE ADD rack_db_key INT UNSIGNED NOT NULL AUTO_INCREMENT,
ADD INDEX (rack_db_key);";
設置它
我已經試過了。它沒有什麼區別。創建表時,auto_increment被初始化爲1。 – Soumpunk
分享您插入查詢和表結構 –
使用此查詢來形容你的表「SHOW cretae表your_table」 –
這可能是因爲:
您可能必須截斷表「架子」,然後應用dbcc checkident(rack,reseed,0)
但在SQL每當你截斷表時,它補種爲0(自動)。
因此ü應使用dbcc checkident(rack,reseed,0)
只有當你有delete
表。
如果你關心這些標識符的數值,你使用他們錯了。您應該將它們視爲適合數字列的不透明斑點。它們只能用於唯一標識表中的行,並且不應該向用戶顯示 - 爲什麼它很重要?它們採用什麼*值? –
你應該檢查是否有觸發器,約束上table.use sp_help將表名定義檢查 – KumarHarsh