处理文件不是很大的csv文件,我们可以直接用Excel或者txt打开,但是遇到文件超级大的就没法用这种方法打开了,我们就可以将数据导入到数据库就行查看,效率会大大提高。
>
由于工作需要,经常需要将mysql数据库中的数据导出到excel表格,或者需要将excel表格数据导入到mysql数据库,我的方法是先将它们都转换成一种中间数据格式csv(execl数据可以直接导出为csv格式,csv格式也可以直接用excel打开)。下面介绍一下 *** 作步骤:
csv导入mysql
load data infile 'C:\\Users\\UserName\\Desktop\\testcsv'
into table `table`
fields terminated by ',' optionally enclosed by '"' escaped by '"'
lines terminated by '\n';
mysql导入csv
select from `table`
load data infile 'C:\\Users\\UserName\\Desktop\\testcsv'
fields terminated by ',' optionally enclosed by '"' escaped by '"'
lines terminated by '\n';
如果乱码,可用相关编辑器打开csv文件,另存为utf-8的csv
参考代码为Visual Studio 2005下C#语言编写,使用的是OLEDB引擎,具体如下:
aspx 页面代码:
<fieldset>
<legend>CSV文件</legend>
<asp:TextBox ID="ImportCSV_tb" runat="server" Text="testAssetcsv"></asp:TextBox>
<br />
<asp:FileUpload ID="ImportCSVTest_fu" runat="server" />
<br />
<asp:Button ID="csvTest_btn" runat="server" Text="Import" CssClass="ButtonStyle" OnClick="csvTest_btn_Click" />
</fieldset>
<asp:Label ID="info_lb" runat="server" Text=""></asp:Label>
<asp:GridView ID="GridView1" runat="server" Visible="False" Width="100%">
</asp:GridView>
aspxcs文件代码:
protected void csvTest_btn_Click(object sender, EventArgs e)
{
thisGridView1Visible = false;
if (thisImportCSVTest_fuFileName == "" || thisImportCSV_tbTextTrim() == "")
{
thisinfo_lbText = "Select the file, and enter the correct name of the file";
return;
}
string strFullFileName = SystemDateTimeNowToString("yyyyMMdd_HHmmss_") + thisImportCSV_tbTextTrim();//保存的文件名
string strpath = ServerMapPath(@"TempFiles\");//详细文件路径
try
{
string sql = "select from " + strFullFileName;//查询语句
DataTable dt = new DataTable();
string mystring = @"Provider=MicrosoftJetOLEDB40;" + "Data Source=" + strpath + ";" + @"Extended Properties=""text;HDR=Yes;FMT=Delimited""";
OleDbConnection cnnxls = new OleDbConnection(mystring);
try
{
ImportCSVTest_fuPostedFileSaveAs(strpath + strFullFileName);//保存到服务器文件夹
cnnxlsOpen();//打开数据库连接
OleDbDataAdapter myda = new OleDbDataAdapter(sql, cnnxls);
mydaFill(dt);
cnnxlsClose();
SystemIOFileDelete(strpath);//删除上传的文件
}
catch (Exception ex)
{
thisinfo_lbText = exToString();//输出错误提示
}
finally
{
cnnxlsClose();
}
thisGridView1DataSource = dt;
thisGridView1DataBind();
thisGridView1Visible = true;
}
catch (Exception ex)
{
thisinfo_lbText += exToString();
}
}
在命令提示符下面,打入:mysqlimport --fields-optionally-enclosed-by=""" --fields-terminated-by=, --lines-terminated-by="\r\n" --user=YOUR_USERNAME --password YOUR_DATABASE YOUR_TABLEcsv上面的选项可谓见名知意,包括各域的符号为(“);各域分隔符为(,);DOS下的回车换行符为\r\n;然后是用户名,提示输入密码,YOUR_DATABASE换成你的数据库名,YOUR_TABLE你的表名,文件最好和表名一致,当然表名可以更改。
以上就是关于如何把csv文件导入到sql数据库全部的内容,包括:如何把csv文件导入到sql数据库、php点击按钮上传csv文件,存入mysql数据库代码怎么写、如何将CSV文件导入MySQL数据库以及如何将MySQL数据库导出CSV文件等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)