PDA

View Full Version : سوال: استفاده از شرط در کوئری



احمد سامعی
دوشنبه 13 آذر 1391, 11:56 صبح
سلام

اول بگم زیاد سرچ کردم

من از اکسس برای یک برنامه دیگه به عنوان بانک استفاده می کنم می خوام یک رکورد جدید در جدول ایجاد کنم. برای اینکار نیاز دارم مقدار شماره آی دی را از روی آخرین رکورد ثبت شده بدست بیارم
حالا ما دو تا حالت داریم
1. وقتی تا حالا هیچ رکوردی ثبت نشده
2. قبلا رکورد در جدول داشتیم و باید آی دی جدید ماکسیسم آی دی قبلی به علاوه یک باشه

من از همین روش در sql server و با استفاده از SP ها به راحتی با کد زیر استفاده می کنم

DECLARE @id int
SET @id = 0

if(NOT EXISTS (SELECT * FROM MyTB))
set @id = 1
else
select @id = MAX(ID)+1 from MyTB

INSERT INTO MyTB(ID, name, amount)
VALUES (@id, @name, @amount)

اما در اکسس نمی دونم چی کار کنم مشکلم ایجاد پارامتر متغییر و استفاده از شرط if هست بهم خطای سینتکس می ده لطفاً راهنمایی کنید؟

Abbas Amiri
سه شنبه 14 آذر 1391, 17:55 عصر
اگر عبارت SQL میخواهید از روش زیر استفاده کنید


IINSERT INTO MyTB (ID,name,amount) SELECT Nz(MAX(ID),0)+1,'" & strName & "'," & intAmount & " FROM MyTB