SQL server和MYSQL中的自增的一些對比

2021-06-22 13:29:32 字數 1260 閱讀 2153

mysql: auto_increament

sql server  : identity

oracle: 

在oracle中沒有想sqlserver自動增長列,如果想要達到這個效果必須要自己建立索引

先介紹oracle中怎麼實現的:

create sequence seq;

create table person(id number(3),name varchar2(10));

insert into person values (seq.nextval,「測試1」);

insert into person values (seq.nextval,「測試2」);

sqlserver中的:

建立表時指定標識列標識列可用 identity 屬性建立,因此在sql server中,又稱標識列為具有identity屬性的列或identity列。(
種子(seed)

是指派給表中第一行的值,預設為1

遞增量(increment)

相鄰兩個標識值之間的增量,預設為1。 )

下面的例子建立乙個包含名為id,型別為int,種子為1,遞增量為1的標識列

create table t_test

(id int identity(1,1),

name varchar(50))

mysql中的:

creat table test (

id int not null auto_increament;

name varchar(50); )

再總結乙個mysql和sql中的異同點:  

前提:表中都有id,即自動增長,作為主鍵,

步驟:實現表插入資料的時候。

mysql中的實現:

insert into 表名(列名1,列名2,列名3......) values(值1,值2,值3........)

不能實現 省略表明字段值的,如下

insert into 表名 values(值1,值2,值3........)

但是省略表的字段值可以在sqlserver中實現;

個人感覺還是sqlserver中不錯;

總結:

oracle :sequence;

mysql:autoincreament

sql :identity;

當有自動增長的時候,mysql必須補齊其字段值;

而在sql中就不需要,只寫表名即可;

SQL Server 和MySQL的區別

sql server和mysql沒多大區別兩者資料庫都能夠在.net或j2ee下執行正常,同樣,都能夠利用raid。區別就是 有一些 控制 名字不一樣,但功能大都一樣。sql server mysql 商業資料庫,貴 不全是免費,但很便宜 只支援windows系統 支援windows和linux,u...

sql server 和mysql 建立索引

1.新增primary key 主鍵索引 alter table table name add primary key column 2.新增unique 唯一索引 alter table table name add unique column 3.新增index 普通索引 alter table...

mysql和sqlserver資料轉換

使用mysql migration toolkit,mysql官方自帶的把mssql轉換為mysql 一直下一步下一步,使用advances功能 1 jdbc jtds sqlserver localhost 1433 db cityinfo user sa password 654123 char...