MSSQLSERVER_107
详细信息
产品名称 |
SQL Server |
产品版本 |
10.0 |
产品内部版本号 |
|
事件 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;
或
SELECT ErrorLog.* FROM dbo.ErrorLog;