2714: There is already an object named in the database(数据库中已存在名为 ... 的对象)
SQL Server含义
数据库中已存在与要创建的对象(表、视图、过程等)同名的对象。CREATE 语句因名称冲突而失败。
原因
第二次运行相同的 CREATE 脚本、未先删除现有对象、对 schema 的假设不同、部署/迁移脚本非幂等,或命名冲突。
解决方法
先检查对象是否存在:用 IF OBJECT_ID('dbo.Name') IS NULL 有条件地创建,或使用 CREATE OR ALTER(适用于过程/视图/函数)。必要时 DROP 现有对象后重新创建。将迁移脚本编写为幂等的。确认在正确的 schema/数据库中操作。
同一数据库的其他条目
- 2812Could not find stored procedure(找不到存储过程)
- 8623The query processor ran out of internal resources and could not produce a query plan(查询处理器耗尽了内部资源,无法生成查询计划)
- 4104The multi-part identifier could not be bound(无法绑定由多个部分组成的标识符)
- 601Could not continue scan with NOLOCK due to data movement(由于数据移动,无法继续以 NOLOCK 方式扫描)
- 50000用 RAISERROR 引发的自定义错误
- 3902The COMMIT TRANSACTION request has no corresponding BEGIN TRANSACTION(COMMIT TRANSACTION 请求没有对应的 BEGIN TRANSACTION)
- 1101Could not allocate a new page because of insufficient disk space in filegroup(文件组磁盘空间不足,无法分配新页)