En iyi yanıtlayıcılar
İncremental Text Id örneğin 'C0001' Nasıl Yapabilirim trigger olarak.

Soru
-
Yanıtlar
-
Merhabalar,
Aşağıdaki linkte farklı çözüm yolları, avantaj ve dezavantajları var. Siz trigger olarak yapmak istiyorsanız örnek olarak aşağıdaki gibi bir yapı kullanabilirsiniz. Öncelikle bu trigger içinde çalışacak bir fonksiyon oluşturmanız gerekmektedir:
http://www.sqlteam.com/article/custom-auto-generated-sequences-with-sql-server
create function NextCustomerNumber() returns char(5) as begin declare @lastval char(5) set @lastval = (select max(customerNumber) from Customers) if @lastval is null set @lastval = 'C0001' declare @i int set @i = right(@lastval,4) + 1 return 'C' + right('000' + convert(varchar(10),@i),4) end GO alter Customers add CustomerNumber varchar(10) create trigger Customers_insert on Customers after insert as update Customers set Customers.customerNumber = dbo.CustomerNumber(Customers.dbID) from Customers inner join inserted on Customers.dbID= inserted.dbID GO
Linkte detayları bulabilirsiniz...
Umarım faydalı olur.
Please Mark This As Answer if it solved your issue
Please Vote This As Helpful if it helps to solve your issue
www.abdullahaltintas.com- Yanıt Olarak Öneren Abdullah Altıntaş 21 Kasım 2016 Pazartesi 12:51
- Yanıt Olarak İşaretleyen Ekrem Önsoy 10 Ocak 2017 Salı 17:30
Tüm Yanıtlar
-
C sabit mi? Sabitse bir sequence tanımla oradan aldığın değeri birleştir.
https://msdn.microsoft.com/en-us/library/ff878091.aspx?f=255&MSPPError=-2147217396
-
-
Merhabalar,
Aşağıdaki linkte farklı çözüm yolları, avantaj ve dezavantajları var. Siz trigger olarak yapmak istiyorsanız örnek olarak aşağıdaki gibi bir yapı kullanabilirsiniz. Öncelikle bu trigger içinde çalışacak bir fonksiyon oluşturmanız gerekmektedir:
http://www.sqlteam.com/article/custom-auto-generated-sequences-with-sql-server
create function NextCustomerNumber() returns char(5) as begin declare @lastval char(5) set @lastval = (select max(customerNumber) from Customers) if @lastval is null set @lastval = 'C0001' declare @i int set @i = right(@lastval,4) + 1 return 'C' + right('000' + convert(varchar(10),@i),4) end GO alter Customers add CustomerNumber varchar(10) create trigger Customers_insert on Customers after insert as update Customers set Customers.customerNumber = dbo.CustomerNumber(Customers.dbID) from Customers inner join inserted on Customers.dbID= inserted.dbID GO
Linkte detayları bulabilirsiniz...
Umarım faydalı olur.
Please Mark This As Answer if it solved your issue
Please Vote This As Helpful if it helps to solve your issue
www.abdullahaltintas.com- Yanıt Olarak Öneren Abdullah Altıntaş 21 Kasım 2016 Pazartesi 12:51
- Yanıt Olarak İşaretleyen Ekrem Önsoy 10 Ocak 2017 Salı 17:30
-
-
istediğim şeyin aynısı bu
gerçekten çok teşekkür ederim mükemmel.
- Düzenleyen Cihan YakarMVP 21 Kasım 2016 Pazartesi 20:25
-