如果是sql server,用transaction sql写;
如果是oracle,用pl/sql写。
这两种语法都可以写一些逻辑语句,跟一些高级语言差不多,随便搜一下就有介绍了。自己学学,不多讲了。
用JDBC也可以,不过稍微麻烦点。用上面的方法可以直接在DBMS的客户端运行,简单直接。
--------------------------------------------
上面我说的,好像不太适合你这个问题。确实用JDBC(Java语言)或ODBC(C++)写代码能实现:循环读文件里面的每条数据,生成相应的sql语句,然后调用API写入数据库。
还有一个方法就是,用txt或excel保存数据,然后用sql server2000的企业管理器导入txt或excel文档,你按着向导试试看。
1、批量插入 *** 作
mapperjava层定义:
int batchInsert(List stockList);
mapperxml层的sql语句:
insert into t_stock (status, asset_classify_id,asset_id,asset_item_id, name,num, batch_num, tag_id,rfid, epc, barcode,qr_code, erp, unit,pic_url, specification, model,material, color,length,width, height, weight,density, volume, price01,price02,warehouse_id, storage_zone_id,storage_location_id,storage_location_tag_id,remark, attr01, attr02,attr03, create_date,last_update,creater, client_id)values (#{itemstatus,jdbcType=VARCHAR},#{itemassetClassifyId,jdbcType=BIGINT},#{itemassetId,jdbcType=BIGINT}, #{itemassetItemId,jdbcType=BIGINT},#{itemname,jdbcType=VARCHAR},#{itemnum,jdbcType=VARCHAR},#{itembatchNum,jdbcType=VARCHAR}, #{itemtagId,jdbcType=VARCHAR},#{itemrfid,jdbcType=VARCHAR}, #{itemepc,jdbcType=VARCHAR},#{itembarcode,jdbcType=VARCHAR},#{itemqrCode,jdbcType=VARCHAR},#{itemerp,jdbcType=VARCHAR}, #{itemunit,jdbcType=VARCHAR},#{itempicUrl,jdbcType=VARCHAR},#{itemspecification,jdbcType=VARCHAR},#{itemmodel,jdbcType=VARCHAR},#{itemmaterial,jdbcType=VARCHAR},#{itemcolor,jdbcType=VARCHAR}, #{itemlength,jdbcType=DECIMAL},#{itemwidth,jdbcType=DECIMAL}, #{itemheight,jdbcType=DECIMAL},#{itemweight,jdbcType=DECIMAL},#{itemdensity,jdbcType=DECIMAL},#{itemvolume,jdbcType=DECIMAL}, #{itemprice01,jdbcType=DECIMAL},#{itemprice02,jdbcType=DECIMAL},#{itemwarehouseId,jdbcType=BIGINT},#{itemstorageZoneId,jdbcType=BIGINT},#{itemstorageLocationId,jdbcType=BIGINT},#{itemstorageLocationTagId,jdbcType=BIGINT},#{itemremark,jdbcType=VARCHAR}, #{itemattr01,jdbcType=VARCHAR},#{itemattr02,jdbcType=VARCHAR},#{itemattr03,jdbcType=VARCHAR},#{itemcreateDate,jdbcType=TIMESTAMP},#{itemlastUpdate,jdbcType=TIMESTAMP},#{itemcreater,jdbcType=BIGINT}, #{itemclientId,jdbcType=BIGINT})
有declare语句是可以的
比如创建了一个表a:
create table a
( aid int identity(1,1) not null Primary(Key),
adata int)
插入数据:
declare @n int
set @n = 0
while @n < 2000
begin
set @n = @n+1
insert into a(adata) values(@n)
end
自己改改就可以了
那要看你需要什么类型的数据了。
最简单的,写一个存储过程,在里头添加一个insert,循环个 大量 次数。
如果存在其他表中有大量数据的,也可以
insert 新表 select from 其他表。
注意一下字段类型。
以上就是关于如何用SQL语句将数据批量插入数据库全部的内容,包括:如何用SQL语句将数据批量插入数据库、mybatis 批量增删改查 *** 作的几种 *** 作以及创建数据库索引、如何往SQL数据库中快速插入大量数据等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)