【发布时间】:2015-11-20 11:29:21
【问题描述】:
我需要将该excel文件上传到mysql数据库表中。
我的 Excel 文件包含如下列:
userid,password,first_name,last_name,user_group AND MySql 数据库
我的表(aster_users)包含许多列,例如:userid、password、first_name、last_name、user_group、queue、active、created_date、created_by、role ..
我的代码如下所示:
String MyCon = "SERVER=*****;" +
"DATABASE=*****;" +
"UID=root;" +
"PASSWORD=******;" + "Convert Zero Datetime = True";
private void btnchoose_Click_1(object sender, EventArgs e)
{
OpenFileDialog dlg = new OpenFileDialog();
dlg.Filter = "Text files | *.csv";
if (dlg.ShowDialog() == DialogResult.OK)
{
string fileName;
fileName = dlg.FileName;
textBox2.Text = fileName;
}
private void btnsubmit_Click(object sender, EventArgs e)
{
MySqlConnection con = new MySqlConnection(MyCon);
con.Open();
string query = "SELECT userid as userid,password as password,first_name as first_name, last_name as last_name,user_group as user_group FROM aster_users";
string strFilePath = textBox2.Text;
MySqlCommand Cmd = new MySqlCommand(query, con);
Cmd.CommandType = CommandType.Text;
MySqlDataReader sdr = Cmd.ExecuteReader();
StreamWriter sw = new StreamWriter(strFilePath);
DataTable Tablecolumns = new DataTable();
for (int i = 0; i < sdr.FieldCount; i++)
{
Tablecolumns.Columns.Add(sdr.GetName(i));
}
sw.WriteLine(string.Join(",", Tablecolumns.Columns.Cast<datacolumn>().Select(csvfile => csvfile.ColumnName)));
while (sdr.Read())
strFilePath = (sdr[1].ToString() + "," + sdr[2].ToString() + "," + sdr[4].ToString() + "," + sdr[5].ToString() + "," + sdr[6].ToString() + ",");
MessageBox.Show("Record saved");
textBox2.Text="No Choose File";
con.Close();
}
【问题讨论】:
-
那么问题是什么?