怎样把大量Excel数据导入到MySQL数据库

怎样把大量Excel数据导入到MySQL数据库,第1张

方法/步骤

首先我们需要在mysql管理工具上面新建一个表,也可以用mysql命令创建,表建立完成之后,你需要将表中的字段名字告诉给填写excel表的人员

打开excel表,按照程序提供的字段填写相应的数据此时注意下面几点:名字(我用红色标示出来了)需要跟程序提供的一样,其他的描述,表头可以不写都行

我使用的mysql管理工具是navicat

for

mysql,打开工具,选择表所在的数据库,然后点击数据库名字,右键数据,出来下拉菜单选择import

wizard

,有汉化版本的更明确d出一个选择界面,我们选择excel

file文件

点击next(下一步),我们选择我们对应的excel文件就行,然后再下面选在我们的文件内容在哪一个sheet中,也就是你的内容写在excel什么地方,这点需要注意,也是关键的地方,我的内容在sheet3中,所以我选择sheet3

,如图:

点击next

(此步骤也是关键步骤),需要注意2点:

1:filed

name

row

就是你的字段所在excel中的位置,也就是第几行(简单办法,一般就是英文对应的那一列)2:first

data

row(从哪一行开始执行),数据从哪一行开始呢,我这里选择的是3,4

点击next

我们选择

target

table

目标对应的数据库,选择你要导入到哪个数据库中表中

7

如果到上面一步没有问题的话,我们默认next到最后

就行了然后打开表就能看到数据跟excel表中的一样

企业管理器

先在sql里建一数据库

选择所有任务

导入数据

选择数据源中选microsoft

access

在把access数据库导入到mssql数据库时,应该注意的几个问题

在使用mssql

server的时候,和access有很多区别的,即使是用sql

server导入access数据库,也有很多地方需要注意,这里,捡几个例子来说说。

1、在access中经常使用的自动编号字段,导入到mssql后,他并不是自增型的int,需要手工设置,把导入后的自动编号字段的标识的“否”改为“是”,“种子”和“递增量”都为“1”,才能成为自动编号;

2、在mssql

server中,有许多保留字,在access中是没有的,当你把数据导入到mssql的时候,问题就出来了。mssql在导入的时候,会自动给这些字段(包括数据库中的表名)加上“[字段名]”,因此,你必须修改你的脚本,把相应的字段名字(或者表名字)加上中括号,或改变字段名字为不是mssql的保留字。(具体是那些,请参考有关资料)

3、在用access关于时间的使用,大家喜欢使用“select

from

aaaa

while

time="

c#如何将dataset中的数据批量导入oracle数据库

public void MultiInsertData(DataSet ds)

{

string connt = "Oracle的连接字符串";

string sql = "select id,name,… from tablename";必须与ds中的一致

DataTable dt = dsDefaults[0];

OracleConnection conn = new OracleConnection(connstr);

OracleCommand cmd = new OracleCommand(sql, conn);

connOpen();

OracleDataAdapter da = new OracleDataAdapter(sqlcmd);

OracleCommandBuilder cb = new OracleCommandBuilder(sqlda);

daUpdate(dt);

connClose();

sqlconnDispose();

}

用这个批量进行导入,速度快,而且方便呀

那你直接用Excel导入oracle数据库咯。

我那时50多个字段也还是insert语句实现的,那个Excel有200000条数据,就是循环了一分多钟都insert进去了。

如何将数据批量导入Oracle数据库?

先确保你要导入的数据库SID中有和你导出数据时所用的用户和密码如果没有请看 2),

1)进入命令控制台,

输入:

imp username/password@SID file=/pathURL full=y

其中username为用户名,password为密码,pathURL导出数据所在路径,

如:

impr scott/tiger@orcl file=D:\datadmp

需要注意的是,你要导入的表的表空间所属的用户和密码必须和你要导入到的表空间所属的用户和密码相同,就是你导出数据时用的哪个用户,导入时也用哪个用户,

2)

如果没有这个用户,创建用户命令如下:

以sysdba 进入sqlplus,

create user identified by password;

grant dba to user;

如何将excel数据批量导入sql数据库

请参阅

将EXCEL数据表导入到SQL中

:jingyanbaidu/article/358570f66145a6ce4724fcba

如何将excel的数据导入到oracle数据库

导入Excel表格

1创建表,表的字段与要导入文件的名称一致

2点击 工具---->ODBC导入器

3选择Excel file 点击连接

4选择要导入的文件,点击确定

5点击 到Oracle 在所有者中选择到自己之前创建的表格 按下回车键

查看对应的字段名是否相对应 最后单击导入

如何将一个txt文档的数据批量导入到数据库?

编写和执行存贮过程:

CREATE PROCEDURE IMPORTTXT

@DBNAME VARCHAR(100)--数据库名

AS

DECLARE @SQLSTRING NVARCHAR(1000)

Set @SqlString=N'Masterxp_CmdShell ''bcp '+@dbname+'DBOTABLENAME in C:\CSVFILETXT -c -S'+@@servername+' -USA -P'''

execute sp_executesql @SqlString

GO

该过程将C:\CSVFILETXT 导入到TABLENAME表中,要求字段结构相符。TXT文档要求是以制表符为字段间隔符,换行为记录间隔。可以直接使用EXCEL导出的“以制表符分隔的文本文档”,或将文本文档转换成该格式。

转载:如何将Excel数据批量导入SQL数据库

namespace WindowsApplication2{public partial class Form1 : Form{public Form1(){InitializeComponent();}private void button1_Click(object sender, EventArgs e){测试,将excel中的sheet1导入到sqlserver中

string connString = server=localhost;uid=sa;pwd=sqlgis;database=master;

SystemWindowsFormsOpenFileDialog fd = new OpenFileDialog();

if (fdShowDialog() == DialogResultOK){TransferData(fdFileName, sheet1″, connString);}}public void TransferData(string excelFile, string sheetName, string connectionString){DataSet ds = new DataSet();try{获取全部数据

string strConn = Provider=MicrosoftJetOLEDB40; + Data Source= + excelFile + ; + Extended Properties=Excel 80;;

OleDbConnection conn = new OleDbConnection(strConn);

connOpen();

string strExcel = ;

OleDbDataAdapter myCommand = null;

strExcel = stringFormat(select from [{0}$], sheetName);

myCommand = new OleDbDataAdapter(strExcel, strConn);

myCommandFill(ds, sheetName);

如果目标表不存在则创建

string strSql = stringFormat(if object_id(’{0}’) is null create table {0}(, sheetName);

foreach (SystemDataDataColumn c in dsTables[0]Columns){strSql += stringFormat([{0}] varchar(255),, cColumnName);}strSql = strSqlTrim(’,') + );

using (SystemDataSqlClientSqlConnection sqlconn = new SystemDataSqlClientSqlConnection(connectionString)){sqlconnOpen();

SystemDataSqlClientSqlCommand mand = sqlconnCreateCommand();

mandCommandText = strSql;

mandExecuteNonQuery();

sqlconnClose();}用bcp导入数据

using (SystemDataSqlClientSqlBulkCopy bcp = new SystemDataSqlClientSqlBulkCopy(connectionString)){bcpSqlRowsCopied += new SystemDataSqlClientSqlRowsCopiedEventHandler(bcp_SqlRowsCopied);

bcpBatchSize = 100;每次传输的行数

bcpNotifyAfter = 100;进度提示的行数

bcpDestinationTableName = sheetName;目标表

thisUpdate();}}}上面的TransferData基本可以直接使用,如果要考虑周全的话,可以用oledb来获取excel的表结构,并且加入ColumnMappings来设置对照字段,这样效果就完全可以做到和sqlserver的dts相同的效果了。

以上就是关于怎样把大量Excel数据导入到MySQL数据库全部的内容,包括:怎样把大量Excel数据导入到MySQL数据库、如何把数据库的数据导入到别的数据库、c#如何将dataset中的数据批量导入oracle数据库等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存