2017-03-16 66 views
-1

我收到一封电子邮件,就在我的SQL Azure数据库一个Schema问题,并读这样的:SQL Azure的架构问题

“无效列名‘假’,”错误代码:207

但是它似乎没有任何更多的信息我甚至不知道从哪里开始,因为架构是在我开始项目之前创建的,但我怀疑这是来自存储过程或视图。

这都是在Azure Portal中报告的,但我不知道如何继续。有没有其他方法可以在SSMS中获得关于Azure Portal的建议?我已经尝试过Tuning Advisor,并且遇到了SQL Azure不受支持的错误。

Pic of Portal

+0

请问您可以粘贴整条信息吗? – TheGameiswar

+0

我会走得更远:你能编辑你的问题来显示与你的模式或数据相关的东西吗?我们看不到任何*。另外 - 我猜你可能会遇到列名为“False”的问题 - 因为这是一个保留字,除非你正确包括名称。 –

+0

TheGameiswar - 那**是整个消息。问题的本质是如何找到更多关于它的问题。 大卫 - 我知道这是一个保留的工作,这就是它抛出错误的原因。问题在于如何找到它的位置。 –

回答

2

我使用这个查询来搜索在此方案中的对象。这会发现每次出现false,并应帮助您找到有问题的列。这会发现你所定义的每一个出现的东西都是@searchName

我发现这回Pinal Dave's blog,回来的路上。这适用于Azure SQL。

declare @searchName varchar(50) = 'false' 
select @searchName as SearchName, 
     OBJECT_SCHEMA_NAME(OBJECT_ID) + '.' + OBJECT_NAME(OBJECT_ID) as ObjectName, 
     [definition] 
from sys.sql_modules 
where definition LIKE '%' + @searchName + '%' 
order by OBJECT_SCHEMA_NAME(OBJECT_ID) + '.' + OBJECT_NAME(OBJECT_ID)