0

我很抱歉这个网站的新手....MS SQL Server 2008 R2 / 那是正在运行语句的数据库。尝试在 THEN 之后使用 INSERT ...可能吗?建议?

userindex 是表
sysname 是列

这是 SQL 语句

Select CASE when sysname <> system_user Then insert into USERINDEX (sysname, truncun, first, last, cname) values (system_user, right(system_user, len(system_user) - charindex('\', system_user)), '{Enter First Name:}', '{Enter Last Name:}', host_name() ) ELSE End From userindex
4

2 回答 2

2

在不知道所使用的 DBMS 的情况下,很难说出确切的语法是什么,但一般来说,您不需要做CASE您想做的事情。像这样的东西会起作用:

insert into USERINDEX
(sysname, truncun, first, last, cname)
(select system_user,
        right(system_user, len(system_user) - charindex('\', system_user)),
        '{Enter First Name:}', '{Enter Last Name:}', host_name() 
 from userindex
 where sysname <> system_user
);
于 2013-03-15T20:33:17.193 回答
1

不,你不能如果你使用的是 T-SQL,你可以将两个或多个句子包装到一个过程中并调用它

于 2013-03-15T20:29:57.403 回答