首页 / 知识
关于事务:SQL Server批量插入是否具有事务性?
2023-04-14 02:05:00

Is SQL Server Bulk Insert Transactional?如果我在SQL Server 2000查询分析器中运行以下查询:
在一个符合OurTable模式的40行文本文件中,但随后更改了最后20行的格式(假设最后20行的字段较少),我收到错误消息。 但是,前40行被提交到表中。 我调用批量插入的方式是否有些问题,使其不具有事务性,还是我需要做一些明确的事情来迫使它在失败时回滚?
但是,它可以放在事务中,因此您可以执行以下操作:
您可以回滚插入。为此,我们需要首先了解两件事
假设您有一个文本文件,该文件包含10行和8行,而7行包含一些无效的详细信息。批量插入文件时,如果未指定或指定批处理大小,则将十分之八插入表中。无效行的第8位和第7位失败,也没有插入。
发生这种情况是因为默认 根据MSDN:
因此,为了使所有10行都失败,即使其中之一无效,我们也需要设置
如果指定BatchSize并且无效行位于特定批次内,则它将仅回滚特定批次,而不回滚整个数据集。 希望这能解决问题。
如MSDN Library(http://msdn.microsoft.com/zh-cn/library/ms188365(v=sql.105).aspx)中的大容量插入的 "如果失败,SQL Server将为每个批处理提交或回滚事务……" 总之,不必向批量插入添加事务性。 尝试将其放入用户定义的事务中,看看会发生什么。实际上,它应该按照您的描述进行回滚。 |
最新内容
相关内容
Python文件的指针定位与查询
Python文件的指针定位与查询,位置,培训,文件,指针,字节,选项,头部,当前位置,表示,方式,1、文件指针:文件被打开后,其对象保存在f中,它会记住文件python为啥运行效率不高
python为啥运行效率不高,工作,代码,不了,地址,情况,项目,第三,业务,策略,培训,python运算效率低,具体是什么原因呢,下列罗列一些:原因:1、python怎么计算python程序运行时间
怎么计算python程序运行时间,时间,培训,程序,方式,脚本,下面,以上,两个,结束,不是,python脚本使用统计时间的方式是time.clock(),而这种方式统Python怎么运行shell脚本
Python怎么运行shell脚本,培训,命令,文件,方法,脚本,文件夹,对象,建议,结果,内容,Python作为一门脚本语言,有时候需要与shell命令交互式使用,在Mac终端下直接运行Python的.py程序
Mac终端下直接运行Python的.py程序,位置,培训,终端,文件,注释,权限,继续,程序,空格,文件名,1.在文件中添加注释首先在你所要运行的python文件python代码运行需要编译吗
python代码运行需要编译吗,代码,培训,做好,体系,平台,语言,机器码,目标,厨师,下次,有人在讨论Python代码是编译执行还是解释执行?这个问题还如何获取当前运行python文件路径
如何获取当前运行python文件路径,名字,培训,路径,脚本,绝对路径,文件,指令,模块,定义,所在,获取当前执行主脚本方法:sys.argv[0]和_file_(1)sypython如何在linux下运行python
python如何在linux下运行python,培训,绝对路径,文件,程序,这个地方,头部,文本,上面,以上,时候,Linux下运行python有两种方式:1、直接使用pythopython怎么在cmd运行文件夹
python怎么在cmd运行文件夹,培训,路径,文件夹,文件,以上,程序,方法,更多,内容,python是一门高级测面向对象的程序设计语言。运行Python,可在python cmd中怎么运行python文件
python cmd中怎么运行python文件,培训,文件,路径,以上,程序,方法,更多,内容,运行Python,可在交互模式下运行,或者命令行中。命令行中运行的是pythonid函数如何运行
pythonid函数如何运行,培训,地址,代码,对象,函数,内存,类型,可能会,整数,字符串,id(object)功能:返回的是对象的“身份证号”,唯一且不变,但在不python怎样启动python程序运行
python怎样启动python程序运行,代码,环境,项目,工具,培训,业务,有限,程序,源文件,功能,执行Python程序的三种方式解释器——python/python3交