sql server 用select into 创建的新表为什么在系统数据库master下面

IFOBJECT_ID(N'newtb',N'U')ISNOTNULLDROPTABLEnewtbgoDeclare@SVarchar(8000)Select@S='Se... IF OBJECT_ID (N'newtb', N'U') IS NOT NULL
DROP TABLE newtb
go
Declare @S Varchar(8000)
Select @S = 'Select 商品条码, 商品名称,地区'
Select @S = @S + ', SUM(Case convert(varchar(10),统计日期,120) When ''' + convert(varchar(10),[统计日期],120) + ''' Then 销量 Else 0 End) as ['+convert(varchar(10),[统计日期],120)+'_销量], SUM(Case convert(varchar(10),统计日期,120) When ''' + convert(varchar(10),[统计日期],120) + ''' Then 库存 Else 0 End) as ['+convert(varchar(10),[统计日期],120)+'_库存]'
From [sydtData].[dbo].[jd_kc] Group By convert(varchar(10),统计日期,120) order by convert(varchar(10),统计日期,120)
Select @S = @S + 'into newtb From [sydtData].[dbo].[jd_kc] Group By 商品条码,商品名称,地区'
print @S
EXEC(@S)

以上语句能够正常执行,但是生成的新表 newtb 不在当前数据库[sydtData]下面,而是在系统数据库[master]下面,求问应该怎么做。
展开
 我来答
匿名用户
2016-06-25
展开全部
在服务器上执行的代码中(例如在存储过程和触发器中)显示的Unicode字符串常量必须以大写字母N为前缀。即使所引用的列已定义为Unicode类型,也应如此。如果不使用N前缀,字符串将转换为数据库的默认代码页。这可能导致不识别某些字符。使用N前缀的要求适用于服务器上产生的字符串常量和从客户端发送的字符串常量。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
lybattlefield
2016-06-24 · 超过63用户采纳过TA的回答
知道小有建树答主
回答量:87
采纳率:80%
帮助的人:68.8万
展开全部
在最开始加入
use sydtData
go
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式