當前位置:首頁 » 編程語言 » sql欄位自增

sql欄位自增

發布時間: 2022-08-19 13:03:12

A. sql server中如何實現自增欄位

1、主鍵自增,以及建表的語句如下:

CREATE TABLEIF NOT EXISTS `t_email_notice` (

`id` INT (11) UNSIGNED NOT NULL AUTO_INCREMENT,`send_time` INT (16) NOT NULL DEFAULT '0',PRIMARY KEY (`id`)

) ENGINE=InnoDB DEFAULT CHARSET=utf8;

其中 `id` INT (11) UNSIGNED NOT NULL AUTO_INCREMENT,這句話表示設置id欄位字增,類型為int

2、varchar類型的主鍵,不會自增。但是你可以通過創建觸發器的形式,來實現自增。代碼如下:

CREATE TRIGGER `T` BEFORE INSERT ON `user`FOR EACH ROW begin

set new.id=concat('SH',lpad(((SELECT substring(id,3,4) from user where id=(select id from user order by id desc limit 1))+1),4,0));

end;

這段語句的意思是,當user表中新插入一條一條語句,會觸發『觸發器T』將以』SH『開頭的id欄位自增+1。

(1)sql欄位自增擴展閱讀

sql語句建表規則如下:

create table 『表名』 (『欄位1』 type1 [not null] [primary key] identity(起始值,遞增量),『欄位2』type2 [not null], ...)--primary key為主鍵 identity表示遞增數量。

B. sql主鍵列自增問題

環境:sql
server
2008
問題:設置主鍵和把它設為自增。
解決:點擊table->選中表->design->選中需要設置主鍵的欄位,單擊右鍵"設置主鍵"即可。
若要設置主鍵自增,在列屬性中找到標識規范,單擊左邊的"+"號,把否改為是,其他默認即可。

C. SQL語句怎樣實現自增欄位初始化

有一個方法可以試試
手工做:在你的表裡加個欄位,如你希望ID從1開始,新增加一個ID1設為
自動增加,標識,然後刪除原來的ID就可以了
CREATE
TABLE
tblNewOrder2
(OrderId
AUTOINCREMENT
(1000,
10),
ItemId
LONG,
Quantity
LONG)create
table
LINE(ID
counter
(1,
1))--其中第一個參數為初始值,第二個為步進值--或create
table
LINE(ID
autoincrement(1,1)-其中第一個參數為初始值,第二個為步進值

D. sqlserver2005 將欄位設置為自增

自增列不能直接修改,必須將原有ID列刪除,然後重新添加一列具有identity屬性的ID欄位。比如你要修改的欄位名為ID:
alter
table
表名
drop
column
ID
alter
table
表名
add
ID
int
identity(1,1)

E. SQL 自動增長欄位 問題

這是SQL的機制,沒有辦法改變!你刪除了2
3
4
後面從9開始,沒必要還繼續用
2
3
4呀!你說的後面會越來越大是對的,但是int類型的少了刪除的這些不影響後面的增長,當然你的程序和這些是否連續沒有關系,所以你沒有必要關心它是否連續!如果你看著不舒服的話,建議你使用GUID類型做為主鍵!

F. 如何用sql語句將一個表的欄位改為主鍵自增

--為一個表添加一個主鍵約束
_TREEINFOPRIMARYKEY(ID);

--無法修改現有欄位為自增欄位,只能在建表時標注欄位自增,如
CREATETABLEMYTABLE(
IDINTPRIMARYKEYIDENTITY(1,1),
NAMEVARCHAR(20),
...
);

G. 在SqlServer中怎樣設置自動增長欄位

sqlserver有3種方式設置自增列,
1.
ssms中在圖形化界面中建表時,設置自動增長的其實值及每次增量
2.
--語句建表時設置自增列,從1開始增長,每次增加1
create
table
test(col1
int
indentity(1,1,))
3.
--修改列為從1開始增長,每次增加10
alter
table
test
alter
col1
int
indentity(1,10)

H. 如何在Sql查詢語句中加上一個自增欄位

SqlServer中的自增的ID的最後的值:
SELECT SCOPE_IDENTITY() --返回插入到同一作用域中的 IDENTITY 列內的最後一個 IDENTITY 值。
SELECT @@IDENTITY --返回插入到當前會話中任何作用域內的最後一個 IDENTITY 列值
SELECT IDENT_CURRENT('TbName')--不受作用域和會話的限制,而受限於指定的表。
IDENT_CURRENT 返回為任何會話和作用域中的特定表所生成的值。
一個作用域就是一個模塊——存儲過程、觸發器、函數或批處理。因此,如果兩個語句處於同一個存儲過程、函數或批處理中,則它們位於相同的作用域中。

SQL可以多個語句一起執行:
insert into ... ; SELECT SCOPE_IDENTITY() ;
二條一起執行,到時可獲取第二個SQL的值

I. oracle sql developer建表的時候id欄位的自動遞增怎麼設置

oracle sql developer建表的時候id欄位的自動遞增的設置方法和步驟如下:

1、首先,打開sql
server資料庫,創建一個新表,然後在表中創建id欄位並選擇int類型,如下圖所示,然後進入下一步。

熱點內容
怎麼樣更改無線網密碼 發布:2024-04-20 13:53:23 瀏覽:883
python用戶 發布:2024-04-20 13:51:46 瀏覽:748
光遇蘋果如何下載安卓服 發布:2024-04-20 13:40:03 瀏覽:460
半歲學編程 發布:2024-04-20 13:17:53 瀏覽:217
linux按鍵 發布:2024-04-20 13:17:52 瀏覽:832
最頂配的伺服器能容納多少ip 發布:2024-04-20 13:17:44 瀏覽:514
貸款車解壓需要什麼 發布:2024-04-20 13:14:52 瀏覽:72
安卓手機電腦怎麼切換 發布:2024-04-20 13:13:25 瀏覽:893
android交叉編譯環境 發布:2024-04-20 13:00:10 瀏覽:184
伺服器怎麼搭建中間層 發布:2024-04-20 12:40:02 瀏覽:98