Delphi中SQL批量插入记录】的更多相关文章

http://www.cnblogs.com/azhqiang/p/4050331.html 在进行数据库操作时, 我们经常会遇到批量向数据库中写入记录的情况. 在这里我提供3种操作方式:   1.  单条语句循环插入, 这是最笨的方法: for i := 0 to 100 do   ADOCommand1.Execute('IINSERT INTO .....')   //伪码, 只是说明意思   2.  多条语句批量插入, 将多条Insert语句拼成一条语句, 一次执行: for i :=…
ado.net已经有了sqlBulkCopy, 但是那个用xml格式,网络传输数据量太大. 自己实现了一个,传输尽量少的字节. 性能没对比过,有需要的自己拿去测试. using System.Data.SqlClient; namespace RaywindStudio.DAL { /// <summary> /// MSSQL批量插入表 /// </summary> public static class SqlBulkInsert { private static bool i…
前几天有一个需求很头痛,部门是有上下级关系的,在给部门的经理赋予角色和权限的时候,通常我们都会认为假如经理A的部门是1,那么我给了他部门1 的管理权限,那么1的下级部门101,102,103 "自然而然的"都应该给他管理. 这个自然而然可不是想当然的那么自然,尤其系统没有设置批量添加功能的时候,靠人工一个个的去添加下级部门真的是不现实.更过分的是,用户要求整个公司的管理人员都要自动的拥有其所在部门的所有下级部门的某个权限,emmmm,烦死了,领导那么多,做事的小弟却只有一个,一个个手动…
前言 前段时间一直在忙着项目上线,在做项目的同时遇到了一些之前不曾碰到的问题,因为没有经验,只能从网上找一些相关的解决方案,但是网上提供的资料实在是太杂,有的根本不能用,耗时又耗力. 我希望把我这段时间遇到的问题记录下来,去帮助那些当时和我一样“饥渴”的人,以减少时间成本,大家放心,遇到的这些问题提供的解决方案都是经过我们测试,现在正在用的,基本上没什么问题.有什么问题,大家也可以进行探讨,因为问题很多,有些记不起来了,我只能写些可以记起来的分享给大家. 插一句,就是大家在搜问题的时候,尽量用关…
参考资料:http://www.w3school.com.cn/sql/sql_union.asp   UNION:操作符用于合并两个或多个select语句的结果集.                 注意   union内部的select语句必须拥有相同的列数并且字段类型相同,且顺序相同. INSERT:  批量插入结果集                1. insert into table                 select x,y from A                 U…
只是一个例子,方便以后查阅. import ey.db.oracle.OracleHelper; import ey.db.type.*; import java.io.BufferedReader; import java.io.File; import java.io.FileFilter; import java.io.FileInputStream; import java.io.FileOutputStream; //import java.io.FileNotFoundExcepti…
字符集-乱码问题 用JDBC访问MySql数据库的时候,如果JDBC使用的字符集和MySql使用的字符集不一致,那么会导致乱码发生.解决办法当时是在使用JDBC的时候指定和数据库一样的字符集.我们可以在DB_URL字符串后加上”?characterEncoding=XXX”的方式指定JDBC使用的字符集. 同时,我们需要知道MySql中使用的字符集,可以通过以下两个命令获取. 1)      show variables like '%character%';获取数据库或者整个服务器使用的字符集…
1.引号配对:  这是在Delphi使用SQL语句时容易出错的地方,由于delphi规定在字符串中用两个西文的单引号“''”表示一个“'”,在拼装语句的时候就容易疏忽遗漏.  Delphi里有个函数QuotedStr能够在字符串的头尾加上一个西文的单引号['],这个函数的定义:function QuotedStr(const s: string):string;  因此,如果要在一个语句中拼装入字符串类型的变量就可以用到这个函数. 2. 区别不同的写法  由于各个数据库的厂商对标准SQL都有各自…
一: INSERT ON DUPLICATE KEY UPDATE 如果您指定了ON DUPLICATE KEY UPDATE,并且插入行后会导致在一个UNIQUE索引或PRIMARY KEY中出现重复值,则执行旧行UPDATE 注意: 1:如果行作为新记录被插入,则受影响行的值为1:如果原有的记录被更新,则受影响行的值为2. 2:如果该表中,由多个唯一索引,需要特别注意,出现重复时则该语句只能更新其中一行记录 如:原有数据表中有数据: UNIQUE KEY `uk_admin_name` (`…
背景: 需要更新一些不规范的时间格式,如将某个时间格式化为yy-MM-dd,实际上为 yy-MM-dd hh:mm:ss,并且需要提供回滚脚本. 例如:规范化时间的脚本如下: ,) WHERE test_date>'2017-06-01 00:00:00' AND test_date<'2017-09-07 00:00:00' 这个脚本是ok,但执行时受到影响的行数如果有几百条甚至上千条记录的话,回滚脚本怎么写呢? 模板如下: update test set test_date= '' whe…