0
A
回答
2
我不知道Sybase ASE中的任何命令类似于MSSQL的alter table/check check constraint
。
如何强制FK约束的检查一些想法:
bcp
到一个临时表,然后通过从临时表中选择插入到目标表;这将产生一个错误,但不一定会告诉你哪个行FK检查失败(除非您选择一次插入/选择1行)用当前值更新FK列(s) (一个或多个); ASE不够聪明,无法知道前/后值是相同的,所以它会运行FK检查;再次,这将产生一个错误,但不会告诉你哪些行FK检查失败;如果它通过并更新一堆行(和相关索引),它也不是非常有效;是这样的:
update child_table set fk_col = fk_col where ... for-the-child-rows-just-inserted ...
- 考虑运行
not exists
查询来查找失败的FK检查,像行:
select * from child c where not exists(select 1 from parent p where p.pk = c.fk) and ... for-the-child-rows-just-inserted ...
相关问题
- 1. 检查约束
- 2. 检查约束
- 3. 检查约束
- 4. 检查约束
- 5. 检查约束
- 6. 检查约束
- 7. Oracle检查约束
- 8. PostgreSQL检查约束
- 9. SQL约束检查
- 10. Oracle检查约束
- 11. 检查sql约束
- 12. BULK INSERT后检查FK约束
- 13. 检查对于约束插入
- 14. 将csv文件导入postgres数据库表(带检查约束),以便导入应导入通过检查约束的所有行
- 15. 解析SQL检查约束
- 16. 约束双重检查
- 17. 检查约束与2表
- 18. 延迟约束检查
- 19. Sql Server 2008检查约束
- 20. 约束检查Oracle SQL
- 21. 检查外键约束MySQL
- 22. 一个Oracle检查约束
- 23. 检查约束为钱
- 24. 检查DataRow约束添加
- 25. SQL Server的检查约束
- 26. EF核心检查约束
- 27. SQL Server:检查约束
- 28. 检查约束的条件
- 29. Sybase检查约束评估
- 30. Condidate的检查约束
谢谢你的提示!我真的不明白为什么没有更好的支持。将使用选项3。 – Beginner