【发布时间】:2012-01-28 19:55:09
【问题描述】:
这是我得到的新错误:
如果 object_id('Osvezi') 为空
执行 sp_executesql N'
创建过程 Osvezi
-- 这里添加存储过程的参数
@tablica nvarchar(200)
作为
开始
IF @tablica = 'Uporabniki' THEN SELECT * FROM Uporabniki;
IF @tablica = 'Dokumenti' THEN SELECT * from Dokumenti;
结尾'
去
【问题讨论】:
-
你不能那样切换数据源。
-
是的,我尝试过没有声明新变量,但我得到了同样的错误
-
你应该放弃这整个想法。
SELECT *本身就是个坏主意。将它与动态选择表相结合是一个更糟糕的主意。你想完成什么? -
接下来我要做的是。我正在用 c# 编写应用程序,调用 Sql server 数据库中的某个过程。作为参数,此过程正在接收其中包含表名的变量。使用该参数,我只想刷新某个表。因为我有 10 个程序,我不想刷新所有表,我只想要那些根据发送的参数而改变的程序......我希望你能理解。提前致谢
-
太晚了,我无法正确使用语法,但请使用
IF @tableName = 'Table1' THEN SELECT col1, col2 FROM Table1;IF @tableName = 'Table2' THEN SELECT col1, col2, col3 from Tabel2;`
标签: sql sql-server sql-server-2008 procedure