0

このサイトは初めてで申し訳ありません....MS SQL Server 2008 R2 / ステートメントが実行されているデータベースです。THEN の後に INSERT を使用しようとしています...可能ですか? 提案?

userindex はテーブル
sysname は列です

HEREは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 を使用している場合は、2 つ以上の文をプロシージャにラップして呼び出すことができます。

于 2013-03-15T20:29:57.403 に答える