如何实现mysql批量导入就是我正在做Excel导入,里面有几万条数据,现在数据我已经全部读取出来保存到集

如何实现mysql批量导入就是我正在做Excel导入,里面有几万条数据,现在数据我已经全部读取出来保存到集,第1张

把EXCEL数据导入到MYSQL吗,是不是这个要求?

第一步,把EXCEL数据转换为TXT(记事本)文件

打开EXCEL,全选数据(如果第一行是标题可能不需要),复制,打开记事本,粘贴,保存为一个文件,例如ABCTXT。

第二步,执行MYSQL语句把TXT文件导入数据库

执行MYSQL后,在>提示符下输入下面的语句就可以导入数据:

load data infile 'e:/insur/reser/from_cbps8/prem_y18txt' into table premium_rate;

你需要修改文件名的完整路径,以及导入数据库的表名,可能之前要使用use语句选择数据库。这样的导入是把数据添加到数据库中。

$value = '';

$query_num = 5; //插入数量

for($i=1;$i<=$query_num;$i++){

    $value = "('25','1')";

}

//mysql insert有插入多条语法,拼接sql语句,table_name表名   

$sql = "insert into table_name (memid,online) values "$value;

//执行,插入$query_num条数据

mysql_query($sql);

            using (SqlConnection conn = new SqlConnection("链接字符串"))

            {

                using (SqlBulkCopy bulk = new SqlBulkCopy("链接字符串"))

                {

                    //一次插入多少行数据

                    bulkBatchSize = 1000;

                    bulkDestinationTableName = "表名";

                    bulkColumnMappingsAdd("数据源中的列", "数据库中的列");

                    bulkWriteToServer(DataTable);

                }

            }

public static DataSet GetDataSet(string FilePath)

{

string OledbConnectionString = stringFormat("Provider=MicrosoftJetOLEDB40;Data Source='" + FilePath + "';Extended Properties='Excel 80;HDR=Yes;IMEX=1'");

OleDbConnection conn = new OleDbConnection(OledbConnectionString);

ArrayList SheetNameList = new ArrayList();

try

{

if (connState == ConnectionStateClosed)

{

connOpen();

}

DataTable dtExcelSchema = connGetOleDbSchemaTable(OleDbSchemaGuidTables, new object[] { null, null, null, "TABLE" });

string SheetName = "";

for (int i = 0; i < dtExcelSchemaRowsCount; i++)

{

SheetName = dtExcelSchemaRows[i]["TABLE_NAME"]ToString();

SheetNameListAdd(SheetName);

}

}

catch (Exception ex)

{

throw ex;

}

finally

{

connClose();

}

DataSet dsExcel = new DataSet();        try

{

string strSql = "";            for (int i = 0; i < SheetNameListCount; i++)

{

strSql = "select from [" + (string)SheetNameList[i] + "]";

OleDbDataAdapter oleExcelDataAdapter = new OleDbDataAdapter(strSql, conn);

DataTable dtExcel = new DataTable((string)SheetNameList[i]);

oleExcelDataAdapterFill(dtExcel);

dsExcelTablesAdd(dtExcel);

}

return dsExcel;

}

catch (Exception ex)

{

throw ex;

}

}这个方法就是从EXCEL文件读取数据转换为DataSet 下面一段时调用的时候要注意的,写要在服务器端保存一下上传的EXCEL,然后再调用        string filePath = "";

DataSet ds = new DataSet();

if (SystemIOPathGetExtension(FileUpload1FileName) != "xls")

{

ClientScriptRegisterStartupScript(PageGetType(), "", "<script>alter('hao')</script>");

return;

}

else

{

filePath = "D:\\" + FileUpload1FileName;

FileUpload1SaveAs(filePath);

string fileName = FileUpload1FileName;

int start = fileNameIndexOf('');

fileName = fileNameSubstring(0, start);

ds = GetDataSet(filePath);

}

以上就是关于如何实现mysql批量导入就是我正在做Excel导入,里面有几万条数据,现在数据我已经全部读取出来保存到集全部的内容,包括:如何实现mysql批量导入就是我正在做Excel导入,里面有几万条数据,现在数据我已经全部读取出来保存到集、PHP怎么一次向数据库插入多条数据、sqlserver 如何向数据库插入多条数据 数据条数不确定等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存