【发布时间】:2017-06-28 17:18:27
【问题描述】:
我有一个表,其中有一个新添加的触发器。
当我尝试运行批处理文件并使用 SqlBulkCopy 上传文件时,它不起作用。
在阅读添加 SqlBulkCopyOptions.FireTriggers 将触发设置到表的触发器后,我添加了它。
但我仍然收到相同的错误 - '批量复制失败。用户对表没有 ALTER TABLE 权限。如果大容量复制操作的目标表具有触发器或检查约束,则需要 ALTER TABLE 权限,但未将“FIRE_TRIGGERS”或“CHECK_CONSTRAINTS”大容量提示指定为大容量复制命令的选项。 '
知道要做什么吗?任何帮助将不胜感激
【问题讨论】:
-
你是问如何分配
ALTER TABLE权限? -
有没有办法在没有更改表权限的情况下解决这个问题?
-
如果调用用户没有
ALTER TABLE权限,还需要添加SqlBulkCopyOption.CheckConstraints。 -
codeusing (var bulkCopy = new SqlBulkCopy(connection, SqlBulkCopyOptions.FireTriggers | SqlBulkCopyOptions.CheckConstraints))codeORcodeusing (var bulkCopy = new SqlBulkCopy(connection, SqlBulkCopyOptions.Fire , SqlBulkCopyOptions.CheckConstraints))。code请确认是不是第一个?第二个有构建错误 -
这是第一个。我在文档中没有看到第二种形式的构造函数重载:msdn.microsoft.com/en-us/library/…
标签: sql-server vb.net triggers