将csv和txt 数据导入到数据库中

将文本数据导入到数据库中,最简单的选择是:Excel使用OpenSet,csv和txt 使用bulk insert来实现

1,使用OpenRowSet将Excel导入到数据库中

参考《OpenRowSet 用法

2,使用bulk insert 将txt数据导入到数据库中,文本数据使用Tab分割Column,使用换行符分割row。

--create staging table
create table dbo.txt_staging
(
col1 nvarchar(255),
col2 nvarchar(255),
col3 nvarchar(255)
)
go

--populate data
bulk insert dbo.txt_staging
from N‘D:\test.txt‘
WITH(
    FIELDTERMINATOR = ‘\t‘,
    ROWTERMINATOR = ‘\n‘
)

3,使用bulk insert 将csv的数据导入数据库中
CSV文件使用“,”作为列分隔符,使用“\n”作为行分隔符

--populate data
bulk insert dbo.txt_staging
from N‘D:\abc.csv‘
WITH(
    FIELDTERMINATOR = N‘,‘,
    ROWTERMINATOR = N‘\n‘,
    CODEPAGE =N‘raw‘
)

Appendix

bulk insert的语法,经过简化如下

BULK INSERT  schema_name . table_name
FROM ‘data_file‘
WITH
(
FIELDTERMINATOR = ‘field_terminator‘,
ROWTERMINATOR = ‘row_terminator‘
);

FIELDTERMINATOR =field_terminator

Specifies the field terminator to be used for char and widechar data files. The default field terminator is \t (tab character).

ROWTERMINATOR =row_terminator

Specifies the row terminator to be used for char and widechar data files. The default row terminator is \r\n (newline character).

参考doc:

BULK INSERT (Transact-SQL)

时间: 2024-10-13 01:12:26

将csv和txt 数据导入到数据库中的相关文章

Bulk Insert:将文本数据(csv和txt)导入到数据库中

将文本数据导入到数据库中的方法有很多,将文本格式(csv和txt)导入到SQL Server中,bulk insert是最简单的实现方法 1,bulk insert命令,经过简化如下 BULK INSERT schema_name . table_name FROM 'data_file' WITH ( FIELDTERMINATOR = 'field_terminator', ROWTERMINATOR = 'row_terminator', DATAFILETYPE=‘WideChar’ )

Java版将EXCEL表数据导入到数据库中

1.采用第三方控件JXL实现 try { //实例化一个工作簿对象 Workbook workBook=Workbook.getWorkbook(new File("F://qzlx.xls")); //获取该工作表中的第一个工作表 Sheet sheet=workBook.getSheet(0); //获取该工作表的行数,以供下面循环使用 int rowSize=sheet.getRows(); for(int i=0;i<rowSize;i++) { //编号 String

java实现EXCEL数据导入到数据库中的格式问题的解决

之前作为项目甲方,加之java接触不多,在java web开发方面都是打下手的份. 对于EXCEL数据导入到数据库这个问题一直老是出现格式原因而导入失败也是未免惆怅,开发团队也是只说回去检查一下格式. 但是,每次导入的时候还会因为格式问题而惴惴不安,最近把代码拿来研究了一下,网上查了一下. 原来是从cell里取出数据后没有做格式匹配直接赋值导致的.因此,在取出数据写入数据库前做一下格式匹配就好了. SO FRUSTRATED BY THE PREVIOUS IGNORANCE! 1 //把EXC

把excel中的数据导入到数据库中的通用方法

方法/步骤 对于把大量数据存放到数据库中,最好是用图形化数据库管理工具,可是如果没有了工具,只能执行命令的话这会是很费时间的事.那我们只能对数据进行组合,把数据组成insert语句然后在命令行中批量直行即可.   我们对下面数据进行组合,这用到excel中的一个功能. 在excel中有个fx的输入框,在这里把组好的字符串填上去就好了. 注:字符串1 & A2 &字符串2 & ... A2可以直接输入,也可以用鼠标点对应的单元格.   每个字符串之间用 & 符号进行连接.下面

Java中使用Oracle的客户端 load data和sqlldr命令执行数据导入到数据库中

Windows环境下测试代码: import java.io.File; import java.io.FileNotFoundException; import java.io.FileWriter; import java.io.IOException; import java.io.InputStream; import java.io.PrintWriter; import java.util.Scanner; public class testTimer { /** * @param

将.csv格式的文件导入oracle数据库中

第一种方法 1.选择工具---文本导入器 2.选择 到oracle的数据选择所有者和表. 3.选择打开文件,选择要导入的文本 4.在field中配置表的对应关系,filed1对应的是.csv中的第一列,配置对应数据的那一列,注意类型,不然导入数据会报错.之后点导入,完成. 第二种方法 1.创建控制文件 如,在E:\创建 test.ctl文件,文件内容为 load data ---控制文件标志 infile'e:/asd.csv'---要输入的文件名及路径 into tablejyzxsj_rdl

将 excel文件数据导入MySQL数据库中

第一步:先将Excel文件另存为文本文件(制表符分割) 第二步:将生成的txt文件另存,并修改编码格式utf8; 第三步:将文件放到指定位置,或自己想要的位置: G:\city.txt 第四步:避免创建数据库及表出现中文乱码和查看编码方法: 1.创建数据库的时候:CREATE DATABASE `test` CHARACTER SET 'utf8' COLLATE 'utf8_general_ci'; 查询字符编码: show variables like'character%'; 将数据库修改

sqlserver怎么将excel表的数据导入到数据库中

在数据库初始阶段,我们有些数据在EXCEL中做好之后,需要将EXCEL对应列名(导入后对应数据库表的字段名),对应sheet(改名为导入数据库之后的表名)导入指定数据库, 相当于导入一张表的整个数据.导入之前需要检查是否存在同名的表,导入的数据表以"$"结尾就是为了避免表重复,以作区分.下面就来看看具体操作步骤. 1 打开SQL Server Management Studio,按图中的路径进入导入数据界面. 2 导入的时候需要将EXCEL的文件准备好,不能打开.点击下一步. 数据源:

文件(csv/xslx)中的数据导入到数据库中

*.sql文件导入数据库通常比较方便. 其他格式如csv.xsl等文件导入比较费劲. 推荐一个针对csv\xsl的导入工具:https://github.com/zhengze/file_to_db.git 具体用法请看README: load data from csv/xlsx into database(mysql/postgresql) INSTALL pipenv install #或者 pip install -r requirements.txt CONFIG $sudo touc