C# 将数据从Excel文件传输到MySQL表
我有一个Excel 2003电子表格,需要导入MySQL。我有一个名为C# 将数据从Excel文件传输到MySQL表,c#,mysql,C#,Mysql,我有一个Excel 2003电子表格,需要导入MySQL。我有一个名为dev_products的表,其中有两个字段;产品标识和产品描述。Excel文件具有完全相同的列结构-但我不知道如何传输数据(通过代码-因为我将不得不再次这样做) 我可以连接到文件…但这是我所能做的…我真的需要一些帮助 谢谢-一如既往 const string connectionString = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" + strExcelFi
dev_products
的表,其中有两个字段;产品标识和产品描述。Excel文件具有完全相同的列结构-但我不知道如何传输数据(通过代码-因为我将不得不再次这样做)
我可以连接到文件…但这是我所能做的…我真的需要一些帮助
谢谢-一如既往
const string connectionString = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" + strExcelFilenameandLocation + "; Extended Properties=Excel 8.0;";
OleDbConnection xlConn = new OleDbConnection(connectionString);
xlConn.Open();
string strQuery = "??????????";
var con = new MySqlConnection(ClsVariables.StrDb);
con.Open();
MySqlCommand command = new MySqlCommand(strQuery, con);
command.ExecuteNonQuery();
con.Close();
xlConn.Close();
使用sql命令直接导入的简单方法 另存为文本(CSV)并在mysql命令行客户端中使用LOAD DATA Inflie LOCAL加载文件 --
参考:以csv格式保存excel文件
using System.IO;
using System.Windows.Forms;
using System.Data;
public class readCSV
{
public DataTable getDataTable()
{
DataTable dTable = new DataTable();
try
{
using (StreamReader readFile = new StreamReader(this.filename))
{
string line;
string[] row;
int rowcount = 0;
DataRow dRow;
while ((line = readFile.ReadLine()) != null)
{
row = line.Split(',');
dRow = dTable.NewRow();
for (int i = 0; i < row.Length; i++)
{
if (rowcount == 0)
{
dTable.Columns.Add(row[i]);
}
else
{
dRow[dTable.Columns[i]] = row[i];
}
}
if (rowcount != 0)
{
dTable.Rows.Add(dRow);
}
rowcount++;
}
}
}
catch (Exception e)
{
MessageBox.Show(e.Message);
}
return dTable;
}
}
使用System.IO;
使用System.Windows.Forms;
使用系统数据;
公共类readCSV
{
公共数据表getDataTable()
{
DataTable dTable=新的DataTable();
尝试
{
使用(StreamReader readFile=newstreamreader(this.filename))
{
弦线;
字符串[]行;
int rowcount=0;
数据行卓尔;
而((line=readFile.ReadLine())!=null)
{
行=行。拆分(',');
dRow=dTable.NewRow();
for(int i=0;i
检查:这个问题向你展示了它是如何完成的。如果您只需要一些列,请确保将它们放在[]之间。请记住,这是它的excel部分。非常感谢您-这真是一个很大的帮助。