0
A
回答
2
都不是。你可以修改所有你想要的。將列設置爲自動增量只是指定新行的默認值,就是這樣。之後,它就像一個普通的列一樣。
編輯:顯然這不適用於SQL Server,但你沒有指定,所以我只是去與流行的答案。
4
一如既往,這取決於您的數據庫。但是,答案可能不是。
在SQL Server中,你從手動插入主鍵爲標識列的限制,除非您使用以下命令:
SET IDENTITY_INSERT [dbo].[MyTable] ON
INSERT INTO [dbo].[MyTable] (id, name) VALUES (1000, 'Foo')
SET IDENTITY_INSERT [dbo].[MyTable] OFF
1
你的意思是自動遞增?
在MS-SQL沒有,
在MySQL中是(取決於發動機)
1
這不是DB無關。然而,MySQL和SQLite的(例如)允許你修改自動增量主鍵:
的mysql:
create table foo (id INTEGER AUTO_INCREMENT, PRIMARY KEY(id));
insert into foo values (null);
select * from foo;
update foo set id = 2 where id = 1;
select * from foo;
源碼(見http://www.sqlite.org/faq.html#q1什麼AUTOINCREMENT實際上意味着):
create table foo(id INTEGER PRIMARY KEY AUTOINCREMENT);
insert into foo VALUES(null);
select * from foo;
update foo set id = 2 where id = 1;
select * from foo;
相關問題
- 1. 是否可以更改「%完成」字段的增量值
- 2. 更改主鍵和自動增量
- 3. 整數主鍵不自動增量
- 4. 是可以更新到空值的自動增量主鍵值爲MySQL表
- 5. 在doctrine2中是否可以有一個不是主鍵的自動增量列?
- 6. JavaDB:是否可以更改現有表上的自動增量偏移量?
- 7. 什麼是自動增量主鍵字段的完美數據類型?
- 8. 瞭解自動增量字段的值
- 9. Rails 3 ActiveRecord save()方法和自動增量主鍵字段
- 10. 自動遞增的字段不是一個主鍵
- 11. 如何在liquibase中設置自動增量主鍵字段的起始值
- 12. 有一個主鍵以及自動遞增字段
- 13. 是否可以動態更改PolyLine.strokeThickness值?
- 14. 自動增量和減量整數字段在sqlite數據庫中可用?
- 15. 自動增量字段
- 16. 是否可以使用NHibernate更新/更改主鍵?
- 17. 是否可以使用人爲限制限制自動遞增主鍵?
- 18. 表格的自動增量值是否可以小於最大值?
- 19. Hibernate/JPA SQLServer主鍵自動增量
- 20. 如何創建自動增量主鍵?
- 21. JPA自動增量非主鍵列
- 22. 兩個主鍵&自動增量
- 23. SQLite:雙主鍵和自動增量
- 24. SQL Server:主鍵自動增量 - 刪除的行和空閒鍵值是什麼?
- 25. mysql將一個負整數值設置爲一個主自動增量字段,它是int
- 26. MySQL-Update插入自動增量主鍵到自定義值
- 27. MySQL - 自動增量+複合主鍵 - 性能和完整性
- 28. 如何增加「主鍵」自動增加數量?
- 29. 更改MySQL中的自動增量值的當前計數?
- 30. 是否可以添加自定義字段來在WordPress後端中動態更改主題字體?
爲了達到最佳效果說你正在使用什麼數據庫。 – 2009-05-30 04:10:32
我認爲這是一個足夠普遍的原則,它將全面適用。也許不是那麼簡單? – eggdrop 2009-05-30 04:22:50
當你嘗試時發生了什麼? – 2009-05-30 05:02:55