2016-05-28 12 views
0

ビジュアルスタジオ2008では、Webアプリケーション(C#)では、サプライヤマスタWebフォームで、「Mac'D」のような新しいベンダ名を追加すると、(M001)のような一意のIDを作成します。このIDは最初のイニシャルから 'M'と001と共に生成され、別のベンダーが最初のイニシャル 'M'を持つ場合、次のID(M002)などになります。 "KFC"なら、それは(K001)のようになります。ユーザーが入力した名前から一意のIDを自動的に作成しますか?

可能ですか?そうならば...これで私を助けてください..

+0

オートに増分列http://www.c-sharpcorner.com/UploadFile/ff2f08/auto-incremented-column-with- varchar-and-nvarchar-data-type/ – mohsen

+0

これまでに何を試みましたか?私があなたを導くことができるようにいくつかのコードを提供してください。 – user3151766

+0

Stpe 1:データをデータベースに保存する方法を指定します。 – Hypnobrew

答えて

0

ALTER PROCEDURE dbo.SP_VENDORCODE @IN INT, @DATE DATETIME, @NAME NVARCHAR(MAX), @ADD1 NVARCHAR(MAX), @MOB NVARCHAR(MAX), @EMAIL NVARCHAR(MAX), @CONTACTPERSON NVARCHAR(MAX), @MOB1 NVARCHAR(MAX), @VAT NVARCHAR(MAX), @CST NVARCHAR(MAX) AS BEGIN DECLARE @NEWID NVARCHAR(5); DECLARE @PREFIX NVARCHAR(1); SET @PREFIX = UPPER(SUBSTRING(@NAME, 1, 1)) SELECT @NEWID = (@PREFIX + replicate('0', 3 - len(CONVERT(NVARCHAR,N.OID + 1))) + CONVERT(NVARCHAR,N.OID + 1)) FROM ( SELECT CASE WHEN MAX(T.TID) IS null then 0 else MAX(T.TID) end as OID FROM ( SELECT SUBSTRING(Code, 1, 1) as PRE_FIX,SUBSTRING(Code, 2, LEN(Code)) as TID FROM SupplierMaster ) AS T WHERE T.PRE_FIX = @PREFIX ) AS N INSERT INTO SupplierMaster VALUES(@IN,@NEWID,@DATE,@NAME,@ADD1,@MOB,@EMAIL,@CONTACTPERSON,@MOB1,@VAT,@CST) END

VARCHARで
関連する問題