这是我正在使用的sql 2000数据库。SQL 2000'TRY CATCH like'错误处理
我有我称之为数据原始数据转储的临时表,所以一切都是ntext或nvarchar(255)。
我需要强制转换/转换所有的数据到相应的数据类型(即INT,小数,NVARCHAR等)
我要做到这一点的方法是通过迭代使用的所有记录while循环并在每次迭代期间在单个记录上的每列上尝试CAST,在访问特定记录之后,我将其标记为已处理(位字段)。
但是,如何在发生/如果发生错误时记录错误,但允许while循环继续。
起初,我在本地SQL 2005实例中使用TRY CATCH实现了此目的,并且所有工作都很顺利,但今天我了解到国际DBA设置的dev &生产数据库是一个SQL 2000实例,所以我必须遵守。
编辑:我正在使用SSIS包来填充登台表。我看到现在我必须重新访问该包并实施脚本组件来处理转换。谢谢你们
编辑:我上午这样一条记录被记录的基础,而不是批量插入,所以交易的想法似乎将是可行的,但我不知道如何捕获@@ ERROR并允许存储过程继续。
编辑:我真的很喜欢Guy's approach,我打算用这种方式实现它。