如何用SQL语句将数据批量插入数据库

如何用SQL语句将数据批量插入数据库,第1张

如果是sql server,用transaction sql写;

如果是oracle,用pl/sql写。

这两种语法都可以写一些逻辑语句,跟一些高级语言差不多,随便搜一下就有介绍了。自己学学,不多讲了。

用JDBC也可以,不过稍微麻烦点。用上面的方法可以直接在DBMS的客户端运行,简单直接。

--------------------------------------------

上面我说的,好像不太适合你这个问题。确实用JDBC(Java语言)或ODBC(C++)写代码能实现:循环读文件里面的每条数据,生成相应的sql语句,然后调用API写入数据库

还有一个方法就是,用txt或excel保存数据,然后用sql server2000的企业管理器导入txt或excel文档,你按着向导试试看。

在一些数据量比较大,而且 *** 作数据库频繁的。此时需要将数据表datatable整块的存入数据库中。

不多说,直接上代码:

首先得新建一个数据库

DataTable

once_rec_date

=

new

DataTable()

这个数据库得跟目标数据库的列的位置和大小都得一样。特别是类型,和位置。

就是列的位置和目标数据库的位置,顺序得

一模一样。因为都是块存储,所以地址什么的都得一样,千万不能少一列,自增列可以空在那边。

在初始化中初始化该表

once_rec_date.Columns.Add("id", typeof(int))

once_rec_date.Columns.Add("RevData_cmd", typeof(int))

once_rec_date.Columns.Add("Node", typeof(int))

once_rec_date.Columns.Add("Data", typeof(String))

once_rec_date.Columns.Add("Ssingle", typeof(int))

once_rec_date.Columns.Add("IsWiressData", typeof(int))

once_rec_date.Columns.Add("Datatime", typeof(DateTime))

once_rec_date.Columns.Add("Receivetime", typeof(DateTime))

once_rec_date.Columns.Add("IsMatch", typeof(int))

一、针对批量插入数据,如果量不是太多,可以多条SQL语句运行就可以了,

类似下面的语句,当然可以使用excel 编辑后,复制到查询器中运行,

insert into table(a,b) values('1','a')

insert into table(a,b) values('2','b')

insert into table(a,b) values('3','c')

二、大量数批量插入,即数据表的移植,数据备份转换之类的,就需要工具,比如MSSQL的DTS工具,pb的数据通道 等等。这里介绍一下 DTS工具。

1、在SQL安装目录下开启导入和导出数据,即DTS。

2、选择一个批量的数据,可以是表,也可以是带分隔符的文件,或excel文档之类,如图中选择,导入的格式

3、选择导入的目标

4、选择导入方式

5.具体的导入规则


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10813437.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-11
下一篇 2023-05-11

发表评论

登录后才能评论

评论列表(0条)

保存