我可以在SQL 2005中执行此操作吗?
SELECT 'C'+inserted.exhid AS ExhId,inserted.exhname AS ExhName,inserted.exhid AS RefID INTO mytable FROM inserted
WHERE inserted.altname IS NOT NULL
如果表存在,它将不起作用,但如果表不存在则将创建表。如何将其插入现有表格?
答案 0 :(得分:5)
INSERT INTO mytable
SELECT 'C'+inserted.exhid AS ExhId,inserted.exhname AS ExhName,
inserted.exhid AS RefID FROM inserted
WHERE inserted.altname IS NOT NULL
在这种情况下你也不需要别名
答案 1 :(得分:3)
SQLMenace的答案是正确的。但是要添加它,我建议在表结构/列顺序发生变化的情况下明确列出要插入的列是一个好习惯,这样你的proc就会更好地改变工作。
INSERT INTO mytable (
ExhId,
ExhName,
RefID)
SELECT 'C'+inserted.exhid,
inserted.exhname,
inserted.exhid
FROM inserted
WHERE inserted.altname IS NOT NULL
答案 2 :(得分:0)
要插入现有表格,请使用INSERT INTO
而不是“SELECT INTO