2010-10-06 114 views
-1

我有一個函數,它需要兩個參數類型和值。根據類型,它將搜索對應的表是否存在值並返回一個布爾值。現在我創建了一個類型爲列的表格。我想傳遞列名及其相應的值以傳遞給函數。將列名與Microsoft SQL Server中的相應值進行比較

例如

manager employee 
======= ========= 
leo  john 

lia  joesph 

這與列名經理和僱員和他們的對應的值的表。 我需要得到像

function validate(columnname1,columnvaue1), 
function validate(columnname1,columnvaue2), 
function validate(columnname2,columnvaue1), 
function validate(columnname2,columnvaue2) 

能否請你建議我一個解決方案....

+0

你能澄清你的表結構和你的目標? – JNK 2010-10-06 19:26:27

+0

你想用動態sql嗎? – Beth 2010-10-06 21:52:50

回答

0

我的SQL是非常生疏,但是這是否幫助? (我甚至測試過它:)

CREATE PROCEDURE [dbo].[ValidateValue] 
    @columnname nchar(10), 
    @columnvalue nchar(10), 
    @tablename nchar(10) 
AS 
BEGIN 
    -- SET NOCOUNT ON added to prevent extra result sets from 
    -- interfering with SELECT statements. 
    SET NOCOUNT ON; 
    DECLARE @SQL varchar(200) 
    SELECT @SQL = 'SELECT COUNT(*) FROM ' + 
    @tablename + ' WHERE ' + 
    @columnname + ' = ' + QUOTENAME(@columnvalue,CHAR(39)) 
    EXEC (@SQL) 
END 
相關問題