我有一個表中的鍵是主鍵。我想添加seqNo
這個鍵應該是自動遞增的,但是不允許它作爲自動遞增。添加除主鍵以外的自動增量列
因爲已經有一個主鍵,
是否有可能使SEQNO自動增量?目前seqNo
不存在。我想添加它
我有一個表中的鍵是主鍵。我想添加seqNo
這個鍵應該是自動遞增的,但是不允許它作爲自動遞增。添加除主鍵以外的自動增量列
因爲已經有一個主鍵,
是否有可能使SEQNO自動增量?目前seqNo
不存在。我想添加它
您可以有一個複合主鍵它是由兩列或更多列組成的主鍵。
CREATE TABLE userdata (
userid integer,
userdataid integer,
info char(200),
primary key (userid, userdataid)
);
我看不到這個信息的相關性。 – Strawberry
@Strawberry你可以有一個複合主鍵,但只有一列可以設置爲自動增量[**見小提琴這裏**](http://sqlfiddle.com/#!2/e35d9/2) –
@mkhalidkunaid我' m很清楚auto_increment的效用,謝謝。這與這個「問題」無關。 – Strawberry
在SQL表中不能有兩個標識列,但仍可以創建序列。以下是鏈接http://technet.microsoft.com/en-us/library/ff878091.aspx
這與MySQL有什麼關係? – peterm
您有以下選擇。
維涅什,請考慮以下...
DROP TABLE IF EXISTS test;
CREATE TABLE test
(testID int(11) NOT NULL
, string varchar(45) DEFAULT NULL
, testInc int(11) NOT NULL AUTO_INCREMENT
, PRIMARY KEY (testID)
, KEY testInc (testInc)
);
INSERT INTO test
(testID
, string
) values
(1
,'Hello'
);
INSERT INTO test (testid,string) SELECT x.testid + y.max_test,string FROM test x JOIN (SELECT MAX(testid) max_test FROM test)y;
INSERT INTO test (testid,string) SELECT x.testid + y.max_test,string FROM test x JOIN (SELECT MAX(testid) max_test FROM test)y;
INSERT INTO test (testid,string) SELECT x.testid + y.max_test,string FROM test x JOIN (SELECT MAX(testid) max_test FROM test)y;
Query OK, 4 rows affected (0.03 sec)
SELECT * FROM test;
+--------+--------+---------+
| testID | string | testInc |
+--------+--------+---------+
| 1 | Hello | 1 |
| 2 | Hello | 2 |
| 3 | Hello | 3 |
| 4 | Hello | 4 |
| 5 | Hello | 6 |
| 6 | Hello | 7 |
| 7 | Hello | 8 |
| 8 | Hello | 9 |
+--------+--------+---------+
注意行(8)的數量,和testinc的值(9)不同的。這不是OP想要的。我用來生成PK的MAX()技巧也不好,因爲它受到運行時錯誤的影響。同樣的http://www.sqlfiddle.com/#!2/d29a5b/1
的一點是
小提琴...存儲順序號是毫無意義的。
謝謝,但在使用phpmyadmin時,我添加了新列seq_no。將其設置爲索引和自動增量。這給出了錯誤:多個主鍵定義。我必須在此處更新現有表,以添加自動增量列 –
'alter table frrole_combined add seq_no varchar(64)not null; 「這有什麼問題? –
@Programming_crazy你真的不會聽我的,是嗎? – Strawberry
它應該是可能的,我會想。在大多數數據庫系統中,自動遞增/標識/序列號和主鍵是完全正交的概念。 –
你不能這樣做。另外,你爲什麼想要? – Strawberry
@Strawberry:保留記錄,我有多少總記錄和whoch numner上的哪條記錄 –