請教自動編號的Stored Procedure(非identity) |
尚未結案
|
skycapc
一般會員 ![]() ![]() 發表:4 回覆:7 積分:2 註冊:2004-02-10 發送簡訊給我 |
請教各位高手:
我有一個編號是抓取一個資料表欄位 年 (EX:a0001)作編號,
其中我想把a0001作成Stored Procedure以預防Client抓到編號重複的問題,
因此段編號程式涉及Batchupdate,所以我想用MS SQL SERVER作Stored Procedure;一遇到要抓取編號時,就去執行此Stored Procedure,
但找了許多資料,卻無法寫出如何作到此編號,因為要在a9999時,下一個
抓取b0001,所以想請問各位,能否給我一個範例呢? 發表人 - skycapc 於 2004/02/10 13:45:22
|
deity
尊榮會員 ![]() ![]() ![]() ![]() ![]() ![]() 發表:90 回覆:876 積分:678 註冊:2003-05-09 發送簡訊給我 |
|
skycapc
一般會員 ![]() ![]() 發表:4 回覆:7 積分:2 註冊:2004-02-10 發送簡訊給我 |
|
regionbbs
一般會員 ![]() ![]() 發表:0 回覆:6 積分:1 註冊:2003-08-20 發送簡訊給我 |
小弟認為可以有幾種解決方案 : 1. 搭配 tempdb 來實作這樣的功能 .
tempdb 可以幫您保存您的編號 , 但由於 tempdb 的內容會在伺服器 (MSSQLServer 服務) 重新啟動或停止時刪除掉 , 所以您可能需要將變數內容保存在應用程式的資料中 . 2. 撰寫一個與 MAX() 功能相同的預存程序 (或使用者函式) , 再於需要時呼叫它 .
ex:
CREATE PROC sp_GetMaxID()
AS
SELECT TOP 1 ProductID FROM Products ORDER BY ProductID DESC
(查詢中如果有其他字元的話要用字串函數處理後再排序) 3. 用應用程式去控制並決定 ID . ========================
K-top 新手 小朱
ps: 我不懂 Delphi 和 C Builder , 只是來這裡幫忙解決與 .NET Framework 或 Windows/Web 程式設計上的一些共同的問題 .
------
K-Top 新手 |
skycapc
一般會員 ![]() ![]() 發表:4 回覆:7 積分:2 註冊:2004-02-10 發送簡訊給我 |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |