102: Incorrect syntax near 'token'('token' 附近有语法错误)
SQL Server含义
Transact-SQL 解析器在指定标记附近发现无效语法,无法编译该语句。查询在运行之前即被拒绝。
原因
拼写错误、缺少逗号/括号、未加方括号使用了保留关键字(例如 USER、ORDER)、未结束的字符串字面量,或从其他 SQL 方言复制的不兼容语法。动态 SQL 中的拼接错误也是常见诱因。
解决方法
仔细检查所报告标记附近的区域;错误往往在前一行。用方括号括住保留字([Order]),并检查括号和逗号是否配对。如果构造动态 SQL,用 PRINT @sql 查看生成的文本并运行它。确认该语法受当前版本/兼容级别支持。
同一数据库的其他条目
- 10928Resource limit for the database has been reached (Azure SQL)(已达到数据库的资源限制)
- 40544The database has reached its size quota (Azure SQL)(数据库已达到大小配额)
- 40613Database is not currently available (Azure SQL)(数据库当前不可用)
- 8114Error converting data type X to Y(将数据类型 X 转换为 Y 时出错)
- 1204The instance of the SQL Server Database Engine cannot obtain a LOCK resource(SQL Server 数据库引擎实例无法获取 LOCK 资源)
- 3906Failed to update database because the database is read-only(无法更新数据库,因为数据库为只读)
- 15023User already exists in the current database(用户在当前数据库中已存在)