如何在程序执行前,首先测试sql是否有效?!
如何在程序执行前,首先测试sql是否有效?!
大概意思是这样的,应特殊要求,我将sql语句写成一个可以给用户设置的变量。
在用户修改了sql语句后,我希望有一个测试按钮,当用户点击了后会测试他写入的sql格式是否正确,表名和字段在数据库中是否存在等等(有点类似与sql查询分析器中的F5的功能)。当然我不能去执行这个sql来测试它是不是正确有效,因为可配置的sql语句中包括update、insert和delete,这些语句执行会破坏数据。
所以基本上我希望能在自编程序中做到类似于sql查询分析器中的F5的功能来测试sql语句。
希望大家帮助解答! 谢谢
------解决方案--------------------也許可以如下:但這樣做感覺不太好
操作資料庫[Sql執行的時候就可以知道有沒有錯誤了],不提交事務
Rollback
------解决方案--------------------可以利用事务,开始begin,sql语句,出现异常就rollback,全部正常就commit。
事务在大型的数据库中,是必备的,如在银行系统的转账过程中,需要更新两条纪录,必须保证两条语句,全部执行,获全不执行。则必须加入事务。