在SQL更新之前检查数据
为了提高性能,我正在从使用框架的模型处理切换到使用直接sql。该框架将处理模型更新和插入,现在我在验证方面遇到了困难 我正在更新一个具有多个关系的模型,如果一个查询失败,框架允许所有查询失败。我试图用多个查询来模拟这一点在SQL更新之前检查数据,sql,sql-server,database,database-update,database-create,Sql,Sql Server,Database,Database Update,Database Create,为了提高性能,我正在从使用框架的模型处理切换到使用直接sql。该框架将处理模型更新和插入,现在我在验证方面遇到了困难 我正在更新一个具有多个关系的模型,如果一个查询失败,框架允许所有查询失败。我试图用多个查询来模拟这一点 在开始向数据库写入数据以进行更新和创建函数之前,如何检查几个表的有效性?创建查询的另一个困难是,关系表需要首先创建第一个表的id,或者在查询时忽略键的有效性。通常使用和的组合来完成此操作。根据需要创建PK、FK和check约束。如果您想确保您没有覆盖其他人刚刚修改的行,还可以创
在开始向数据库写入数据以进行更新和创建函数之前,如何检查几个表的有效性?创建查询的另一个困难是,关系表需要首先创建第一个表的id,或者在查询时忽略键的有效性。通常使用和的组合来完成此操作。根据需要创建PK、FK和check约束。如果您想确保您没有覆盖其他人刚刚修改的行,还可以创建更新时间戳。如果在insert、update或delete上出现错误,请回滚事务或进行处理 听起来你应该使用事务。这将允许您在任何操作失败时回滚多个insert/update/delete。ha-这是我现在已经熟悉了大约一分钟的概念。我如何检查任何查询中是否有错误并回滚事务?我会在后端使用try-and-catch吗?通常,是的,数据库上的raise错误也会在前端显示为raise。我能用它来检测哪个表单输入导致了问题吗?我不确定。错误消息可能会包含一些关于哪个列未通过检查的信息,但它可能不包含您要查找的所有内容。测试它并不困难。我想试试,但我现在没有安装SQL Server。我发现了这个,看起来我可以使用SQL来获取自定义信息