string strconn = "provider=Microsoft.Jet.oledb.4.0;Data Source=" + textBox1.Text;
OleDbConnection conn = new OleDbConnection(strconn);
conn.Open();
if (bo == false)
{
comboBox1.Items.Clear();
DataTable dt = conn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, new object[] { null, null, null, "TABLE" });
foreach (DataRow dr in dt.Rows)
{
comboBox1.Items.Add((String)dr["TABLE_NAME"]);
//MessageBox.Show((String)dr["TABLE_NAME"]);
}
//comboBox1.Text = comboBox1.Items[0].ToString();
}
else
{
string sql = "select * from " + comboBox1.Text;
OleDbDataAdapter aper = new OleDbDataAdapter(sql, conn);
DataSet myset = new DataSet();
aper.Fill(myset, comboBox1.Text);
dataGridView1.DataSource = myset.Tables[comboBox1.Text];
}
conn.Close();
6 个解决方案
#1
连接字符串中增加:"HDR=Yes;"
#2
系统将Excel第一行的内容当作了一个字段的Title,所以就少一行
#3
@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\MyExcel.xls;Extended Properties=""Excel 8.0;HDR=Yes;IMEX=1"""
"HDR=Yes;" indicates that the first row contains columnnames, not data
"IMEX=1;" tells the driver to always read "intermixed" data columns as text
TIP! SQL syntax: "SELECT * FROM [sheet1$]" - i.e. worksheet name followed by a "$" and wrapped in "[" "]" brackets.
以上内容引自: http://www.connectionstrings.com
如果第一行是数据而不是标题的话, 应该写: "HDR=No;"
"HDR=Yes;" indicates that the first row contains columnnames, not data
"IMEX=1;" tells the driver to always read "intermixed" data columns as text
TIP! SQL syntax: "SELECT * FROM [sheet1$]" - i.e. worksheet name followed by a "$" and wrapped in "[" "]" brackets.
以上内容引自: http://www.connectionstrings.com
如果第一行是数据而不是标题的话, 应该写: "HDR=No;"
#4
连接字符串中增加:"HDR=Yes;" 后conn.Open(); 出错: 找不到可安装的ISAM
请问怎么解决?????
string strconn = "provider=Microsoft.Jet.oledb.4.0;Extended Properties=Excel 8.0;HDR=No;Data Source=" + textBox1.Text;
请问怎么解决?????
string strconn = "provider=Microsoft.Jet.oledb.4.0;Extended Properties=Excel 8.0;HDR=No;Data Source=" + textBox1.Text;
#5
ok 谢谢大家 应该是*8808(空间/IV) 说得 "HDR=No;"
#6
还有个问题
excel里面如果有字符&数字混合 那么就读出来字符.
请问怎么解决
"IMEX=1;" tells the driver to always read "intermixed" data columns as text
这个好像是解决这个问题的,但是没有起到任何作用呀.
excel里面如果有字符&数字混合 那么就读出来字符.
请问怎么解决
"IMEX=1;" tells the driver to always read "intermixed" data columns as text
这个好像是解决这个问题的,但是没有起到任何作用呀.
#1
连接字符串中增加:"HDR=Yes;"
#2
系统将Excel第一行的内容当作了一个字段的Title,所以就少一行
#3
@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\MyExcel.xls;Extended Properties=""Excel 8.0;HDR=Yes;IMEX=1"""
"HDR=Yes;" indicates that the first row contains columnnames, not data
"IMEX=1;" tells the driver to always read "intermixed" data columns as text
TIP! SQL syntax: "SELECT * FROM [sheet1$]" - i.e. worksheet name followed by a "$" and wrapped in "[" "]" brackets.
以上内容引自: http://www.connectionstrings.com
如果第一行是数据而不是标题的话, 应该写: "HDR=No;"
"HDR=Yes;" indicates that the first row contains columnnames, not data
"IMEX=1;" tells the driver to always read "intermixed" data columns as text
TIP! SQL syntax: "SELECT * FROM [sheet1$]" - i.e. worksheet name followed by a "$" and wrapped in "[" "]" brackets.
以上内容引自: http://www.connectionstrings.com
如果第一行是数据而不是标题的话, 应该写: "HDR=No;"
#4
连接字符串中增加:"HDR=Yes;" 后conn.Open(); 出错: 找不到可安装的ISAM
请问怎么解决?????
string strconn = "provider=Microsoft.Jet.oledb.4.0;Extended Properties=Excel 8.0;HDR=No;Data Source=" + textBox1.Text;
请问怎么解决?????
string strconn = "provider=Microsoft.Jet.oledb.4.0;Extended Properties=Excel 8.0;HDR=No;Data Source=" + textBox1.Text;
#5
ok 谢谢大家 应该是*8808(空间/IV) 说得 "HDR=No;"
#6
还有个问题
excel里面如果有字符&数字混合 那么就读出来字符.
请问怎么解决
"IMEX=1;" tells the driver to always read "intermixed" data columns as text
这个好像是解决这个问题的,但是没有起到任何作用呀.
excel里面如果有字符&数字混合 那么就读出来字符.
请问怎么解决
"IMEX=1;" tells the driver to always read "intermixed" data columns as text
这个好像是解决这个问题的,但是没有起到任何作用呀.