[英]Where did this invalid object name come from?
我有一个简单的SQL UPDATE
查询,抱怨“ ASP.NET项目中根本不存在”无效的对象名” AuditCrudFields
。 (我已经在我的项目中尝试了对AuditCrudFields
进行AuditCrudFields
,但找不到匹配项。)
UPDATE
语句是:
UPDATE [dbo].[PartModel]
SET partOfficial = 39, updateTS = CONVERT(DATETIME, ‘2017-12-08’, 111)
WHERE partId = 298
返回的错误:
令人费解的是,这些都是PartModel
内部存在的所有属性。 所以我想知道AuditCrudFields
来自哪里?
public class PartModel : EntityInformation
{
[Key]
public Int64 partId { get; set; }
public int partTypeId { get; set; }
[ForeignKey("partTypeId")]
public virtual PartTypeModel PartType { get; set; }
public int locationId { get; set; }
[ForeignKey("locationId")]
public virtual LocationModel Location { get; set; }
public int partOfficial { get; set; }
public int partUnofficial { get; set; }
public int partThreshold { get; set; }
public string partImg { get; set; }
public int partStatus { get; set; }
}
您可以运行此查询来查找尝试使用表AuditCrudFields
的SQL对象代码:
select *
from sys.objects
where object_definition(object_id) like '%AuditCrudFields%'
如果这不在触发器定义内,我会感到非常惊讶。
您拥有的是一个删除或重命名的对象,称为AuditCrudFields
(我将其称为AuditCrudFields
对象)
这可能在Trigger
定义内(或可能埋在存储过程,函数或索引定义内...)
查找失效对象的最有效方法是将整个数据库脚本化为文本(成一个大的SQL脚本),然后搜索文本...
在找到文本的位置,它将指向使用它的位置(也许是触发器),然后您可以修复或删除触发器,并希望将其修复。
还有就是帮助很多与互联网或等脚本SQL Server数据库,但这里是另一个链接
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.