Tsql SQL Server大容量插入的详细错误信息

Tsql SQL Server大容量插入的详细错误信息,tsql,sql-server-express,sql-server-2008-express,Tsql,Sql Server Express,Sql Server 2008 Express,我正在使用SQLServerExpress2008,并且正在大量插入数据。我希望有更多详细的错误消息,最好是打印插入失败的数据。可能吗 这是可能的,但要做到这一点可能需要很多努力——我记得在我让一个子系统完成它需要做的所有事情之前,我在它上面工作了几天。我相信这是其中的一个(少数但仍然太多)地方,在遇到错误时,SQL将背靠背返回两(2)条错误消息,第二条消息模糊不清,所有错误处理函数只能访问与第二条跛脚消息相关的信息,而不能访问第一条真正信息所在的信息。我面前没有代码,但逻辑是这样的: 如果批

我正在使用SQLServerExpress2008,并且正在大量插入数据。我希望有更多详细的错误消息,最好是打印插入失败的数据。可能吗

这是可能的,但要做到这一点可能需要很多努力——我记得在我让一个子系统完成它需要做的所有事情之前,我在它上面工作了几天。我相信这是其中的一个(少数但仍然太多)地方,在遇到错误时,SQL将背靠背返回两(2)条错误消息,第二条消息模糊不清,所有错误处理函数只能访问与第二条跛脚消息相关的信息,而不能访问第一条真正信息所在的信息。我面前没有代码,但逻辑是这样的:

  • 如果批量插入失败,请在批量插入上使用“errorfile”选项生成错误文件
  • 尝试/捕获批量插入调用,并仔细检查返回的错误号
  • 如果错误类型正确,请打开并读取文件内容,以确定哪里出了问题,并围绕该错误生成错误消息
虽然很尴尬,但最终效果还是不错的。只要插入的驱动器+路径+文件名不超过128个字符(在SQL 2005中,我敢打赌他们在2008年没有解决这个问题。)我不认为批量插入是我最喜欢的命令之一