CREATE TABLE #names (
[name] nvarchar(max)
);
INSERT INTO #names ([name])
SELECT CustomerName from CustomerInformation
Where status=3
INSERT INTO #names ...是否会在SQL Server跟踪中显示为对tempdb中的表的INSERT或来自CustomerInformation的选择。或者两者都会出现在痕迹中?
基本上,跟踪会将语句显示为插入还是选择?
答案 0 :(得分:3)
取决于您在Trace中实际查找的事件:
INSERT INTO ... SELECT FROM ...
CREATE TABLE ...; INSERT INTO ... SELECT FROM ...
。跟踪中启用的其他事件将相应显示(锁,安全审核,查询计划等)。但问题的要点是:INSERT INTO ... SELECT ... FROM ...
是一个单个陈述,而不是两个陈述。
答案 1 :(得分:1)
您的陈述将在跟踪中出现一次,与您输入的完全相同。执行命令时,与语句关联的数据库将是当前数据库。由于未在FROM子句中指定数据库,因此当前数据库将是CustomerInformation表所在的数据库。