MSSQLSERVER_107

适用于:SQL ServerAzure SQL 数据库Azure SQL 托管实例

详细信息

Attribute
产品名称 SQL Server
事件 ID 107
事件源 MSSQLSERVER
组件 SQLEngine
符号名称 P_NOCORRMATCH
消息正文 列前缀 '%.*ls' 与查询中使用的表名或别名不匹配。

解释

用列前缀错误地对该查询的 Select 列表中包含的星号 (*) 进行了限定。 在以下情况下可能会返回此错误:

  • 列前缀与查询中使用的表名或别名不对应。 例如,下面的语句使用别名 (T1) 作为列前缀,但是该别名未在 FROM 子句中定义。

    SELECT T1.* FROM dbo.ErrorLog;  
    
  • 将表名指定为列前缀,但是在 FROM 子句中提供的是表的别名。 例如,下面的语句使用表名 ErrorLog 作为列前缀;但是,在该表的 FROM 子句中定义的是别名 (T1)。

    SELECT ErrorLog.* FROM dbo.ErrorLog AS T1;  
    

    如果已经在 FROM 子句中提供了表的别名,则只能使用该别名作为表列的前缀。

用户操作

使列前缀与在查询的 FROM 子句中指定的表名或别名相匹配。 例如,可按如下方式更正上面的语句:

SELECT T1.* FROM dbo.ErrorLog AS T1;  

or

SELECT ErrorLog.* FROM dbo.ErrorLog;  

另请参阅

MSSQLSERVER_4104