View Full Version : روال در اس کیو ال
damanpak
یک شنبه 17 اردیبهشت 1391, 11:43 صبح
سلام به دوستان برنامه نویس
میخواستم بدونم چرا نمیشه نام جدول رو به عنوان پارامتر در روال زیر قرار بدم و روال رو بسازم؟
create function rndids(@nfld nchar(35))
returns table
as
return
select * from @ntbl
END
SReza1
یک شنبه 17 اردیبهشت 1391, 12:38 عصر
در نوشتن function بهر حال يه محدوديتهايي وجود دارد و نميشه به صورت dynamic بتوني select بزني . اگه نياز نيست حتما از فانكشن استفاده كني از پروسيجر استفاده كن. مثل زير :
CREATE PROCEDURE [dbo].[usp_SELECTTable](@TableName VARCHAR(255)) AS
EXEC('SELECT * FROM '+ @TableName)
GO
--Exp :
[dbo].[usp_SELECTTable] 'Table1'
البته اگه بخواهي ميتوني در run time به صورت dynamic ، تابع create بكني ولي راه خوبي نيست و بايد يا تعداد زيادي تابع ايجاد كني و يا يك تابع رو مرتب alter كني و روي اون كد بنوسيي كه روي برنامههاي چند كاربره اصلا جواب نميده
damanpak
دوشنبه 18 اردیبهشت 1391, 00:19 صبح
من همچنان منتظر جواب دوستان هستم اگه راهی هست ممنون میشم راهنماییم کنید
vBulletin® v4.2.5, Copyright ©2000-1403, Jelsoft Enterprises Ltd.