Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/78.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在SQL更新之前检查数据_Sql_Sql Server_Database_Database Update_Database Create - Fatal编程技术网

在SQL更新之前检查数据

在SQL更新之前检查数据,sql,sql-server,database,database-update,database-create,Sql,Sql Server,Database,Database Update,Database Create,为了提高性能,我正在从使用框架的模型处理切换到使用直接sql。该框架将处理模型更新和插入,现在我在验证方面遇到了困难 我正在更新一个具有多个关系的模型,如果一个查询失败,框架允许所有查询失败。我试图用多个查询来模拟这一点 在开始向数据库写入数据以进行更新和创建函数之前,如何检查几个表的有效性?创建查询的另一个困难是,关系表需要首先创建第一个表的id,或者在查询时忽略键的有效性。通常使用和的组合来完成此操作。根据需要创建PK、FK和check约束。如果您想确保您没有覆盖其他人刚刚修改的行,还可以创

为了提高性能,我正在从使用框架的模型处理切换到使用直接sql。该框架将处理模型更新和插入,现在我在验证方面遇到了困难

我正在更新一个具有多个关系的模型,如果一个查询失败,框架允许所有查询失败。我试图用多个查询来模拟这一点


在开始向数据库写入数据以进行更新和创建函数之前,如何检查几个表的有效性?创建查询的另一个困难是,关系表需要首先创建第一个表的id,或者在查询时忽略键的有效性。

通常使用和的组合来完成此操作。根据需要创建PK、FK和check约束。如果您想确保您没有覆盖其他人刚刚修改的行,还可以创建更新时间戳。如果在insert、update或delete上出现错误,请回滚事务或进行处理

听起来你应该使用事务。这将允许您在任何操作失败时回滚多个insert/update/delete。ha-这是我现在已经熟悉了大约一分钟的概念。我如何检查任何查询中是否有错误并回滚事务?我会在后端使用try-and-catch吗?通常,是的,数据库上的raise错误也会在前端显示为raise。我能用它来检测哪个表单输入导致了问题吗?我不确定。错误消息可能会包含一些关于哪个列未通过检查的信息,但它可能不包含您要查找的所有内容。测试它并不困难。我想试试,但我现在没有安装SQL Server。我发现了这个,看起来我可以使用SQL来获取自定义信息