PDA

View Full Version : نحوه پیاده سازی این دستور



majnun
چهارشنبه 14 مهر 1389, 21:50 عصر
سلام دوستان

من یه دستور دارم که به این صورته



select MAX(id) from table news



ببینید من یه دستور اینسرت دارم که یک از ورودی های این استرودپروسیجر یه مقدار عددی هست که میخوام چک کنم ببینم اگه این مقدار 1 بود بیاد id همین رکوردی که استرودپروسیجر الان ذخیره کرد رو بگیره و درون یه حدول دیگه بریزه

نمیخوام دیگه تو فرم براش کدی بنویسم

به نظر شما چجوری این کارو کنم ؟

میشه دستوری در اس کیو ال به صورت بالا نوشت ؟

raziee
چهارشنبه 14 مهر 1389, 23:45 عصر
سلام دوستان

من یه دستور دارم که به این صورته




ببینید من یه دستور اینسرت دارم که یک از ورودی های این استرودپروسیجر یه مقدار عددی هست که میخوام چک کنم ببینم اگه این مقدار 1 بود بیاد id همین رکوردی که استرودپروسیجر الان ذخیره کرد رو بگیره و درون یه حدول دیگه بریزه

نمیخوام دیگه تو فرم براش کدی بنویسم

به نظر شما چجوری این کارو کنم ؟

میشه دستوری در اس کیو ال به صورت بالا نوشت ؟



SET @ScopeIdentity = SCOPE_IDENTITY()

این تاپیک رو ببینید (http://barnamenevis.org/forum/showthread.php?t=189524)

majnun
پنج شنبه 15 مهر 1389, 00:03 صبح
ببخشید منظوره منو انگاری متوجه نشدید

من میخوام در 1 استرود پروسیحر 2 تا دستور اینسرت داشته باشم

یکی از ورودی های استرودپروسیجر رو چک کنم

اکه ورودی برابر 1 بود

بیام دستور اول رو اینسرت کنم

بعد id اون دستور اینسرت شده رو بگیرم

و درون دستور بعدی اینسرت کنم

ممنون میشم توصبح بدین

raziee
پنج شنبه 15 مهر 1389, 00:14 صبح
ببخشید منظوره منو انگاری متوجه نشدید

من میخوام در 1 استرود پروسیحر 2 تا دستور اینسرت داشته باشم

یکی از ورودی های استرودپروسیجر رو چک کنم

اکه ورودی برابر 1 بود

بیام دستور اول رو اینسرت کنم

بعد id اون دستور اینسرت شده رو بگیرم

و درون دستور بعدی اینسرت کنم

ممنون میشم توصبح بدین

برادر این سوال رو باید در بخش SQL Server مطرح میکردید.
CREATE PROCEDURE Test
@ID int, @Name nvarchar(50)
AS
BEGIN
DECLARE @ScopeIdentity int
SET @ScopeIdentity = 0
IF (@ID = 1)
BEGIN
INSERT YourTable(Name)Values(@Name)
SET @ScopeIdentity = SCOPE_IDENTITY()
END

INSERT YourTable2 (ID) VALUES (@ScopeIdentity)
END
GO

البته بهتره برای اینکار از TRANSACTION استفاده کنید.