DB2 和SQL Server自增列比較
最近由於對SQL Server的自增列理解不夠好,導致了一個設計問題,做了2個小例子解釋一下
SQL Server的自增列
create table identitytest(
id int identity(1,1),
name varchar(20)
)
go
set IDENTITY_INSERT identitytest ON
go
insert into identitytest(id,name)values(1,'test1')
go
insert into identitytest(id,name)values(2,'test2')
go
set IDENTITY_INSERT identitytest OFF
go
insert into identitytest(name)values('test3')
go
set IDENTITY_INSERT identitytest ON
go
insert into identitytest(id,name)values(10000,'test4')
go
set IDENTITY_INSERT identitytest OFF
go
insert into identitytest(name)values('test5')
go
id name
1 test1
2 test2
3 test3
10000 test4
10001 test5
(5 rows affected)
1>
SQL Server的自增列的值取決於表裡面的此列的當前的最大值。
create table identitytest(
id bigint not null generated by default as identity (start with 1,increment by 1),
name varchar(20)
);
insert into identitytest(id,name)values(1,'test1');
insert into identitytest(id,name)values(2,'test2');
insert into identitytest(name)values('test3');
insert into identitytest(id,name)values(10000,'test4');
insert into identitytest(name)values('test5');
db2 => select * from identitytest;
ID NAME
-------------------- --------------------
1 test1
2 test2
1 test3
10000 test4
2 test5
5 record(s) selected.
db2 =>
DB2的自增列,當你手工插入自增列的值的時候,DB2會無視你插入的值,DB2用自增列的定義產生值。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/725820/viewspace-2214688/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- SQL Server自增列跳號總結SQLServer
- 比較Windows和Linux SQL容器WindowsLinuxSQL
- SQL、NoSQL和NewSQL的優缺點比較SQL
- DB2常用函式與Oracle比較TIDB2函式Oracle
- SQL在自增列插入指定資料的操作方法SQL
- ABAP OPEN SQL裡OPEN CURSOR和SELECT的比較SQL
- js 深比較和淺比較JS
- MySQL中的自增列MySql
- Oracle date 型別比較和String比較Oracle型別
- not in 和 not exists 比較和用法
- DMSQL DM自增列的使用SQL
- TCP和UDP比較TCPUDP
- Redis 和 Memcached 比較Redis
- Java和JavaSciprt比較Java
- etcd和redis比較Redis
- Go和Python比較的話,哪個比較好?GoPython
- PyTorch和TensorFlow比較 - thegradientPyTorch
- ==和equals方法的比較
- ImageMagic 和 GraphicsMagick 的比較
- ArrayList和LinkedList的比較
- 比較器-Comparable和Comparator
- DB2 SQL改寫DB2SQL
- 使用sql Server自帶之sql Mail派信須知SQLServerAI
- SQL Server底層架構技術對比SQLServer架構
- SQL Server映象自動生成指令碼方法SQLServer指令碼
- MySQL自增列ID的面試題MySql面試題
- Go 與 C++ 的對比和比較GoC++
- Transformer和MoE架構比較ORM架構
- Java 中 Comparable 和 Comparator 比較Java
- TreeMap和HashMap的元素比較HashMap
- sql serverSQLServer
- 【SQL Server】本地備份和還原SQLServer
- SQLServer插入資料到有自增列的表SQLServer
- 神奇的 SQL 之別樣的寫法 → 行行比較SQL
- MVC、MVP和MVVM以及MVA比較MVCMVPMVVM
- Spring和SpringBoot比較,解惑區別Spring Boot
- [C#] string 和 StringBuilder 的比較C#UI
- 360°全方位比較PostgreSQL和MySQLMySql