PDA

View Full Version : سوال: ارسال مقدار به sql از طریق storeprocedure



caspiansea
سه شنبه 30 مهر 1398, 15:35 عصر
با سلام. من توی storprocedure یه اسکریپت به صورت زیر دارم
SELECT * FROM tableName WHERE id IN (@id)
نوع آی دی int هستش و من میخوام چند مقدار رو از برنامه بفرستم برای sql. مثلا 45و60و80و100و.....
SELECT * FROM tableName WHERE id IN (45,60,80,100,200,500)
مقادیری که توی برنامه بدست میاد string هستن و موقع اجرا خطلا میگیره.
ممنون میشم توضیح بدید چطور مقادیر رو بصورت عددی بتونم ارسال کنم برای sql.

ghossein
جمعه 03 آبان 1398, 11:43 صبح
سلام


DECLARE @Sql VARCHAR(MAX)
DECLARE @ids AS varchar(1000)
SET @ids = '1,2,3'
SET @ids = REPLACE(@ids,',',''',''')


SET @Sql = 'SELECT TOP 1000 [PID]
,[Image]
,[Title]
FROM [Shop].[dbo].[Product]
where PID IN (
''' + @ids + '''
)'
EXEC (@Sql)
GO

caspiansea
دوشنبه 13 آبان 1398, 15:57 عصر
بسیار بسیار سپاس:لبخندساده: