private DataSet excel(string str)
{
string sqlstr;
sqlstr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + str + ";Extended Properties='Excel 8.0; HDR=YES; IMEX=1;'";
OleDbConnection conn = new OleDbConnection(sqlstr);
OleDbDataAdapter adapter = new OleDbDataAdapter("SELECT * FROM [Sheet1$]", conn);
adapter.Fill(ds,"excel");
DataTable dt = ds.Tables["excel"];
return ds;
}
protected void Button2_Click(object sender, EventArgs e)
{
string str = FileUpload1.FileName;
string FilePath = Server.MapPath("./FileUpload/") + str;
FileUpload1.PostedFile.SaveAs(FilePath);
ds = excel(FilePath);
d.UpDate1(ds, "excel");//引用SqlData.cs中的UpDate1()函数
}SqlData d = new SqlData();//以下是SqlData.cs中的代码,SqlData.cs是用来存放连接数据库函数的
public class SqlData
{
//定义该类共用变量
private SqlConnection conn;
private SqlCommand cmd;
private DataSet ds;
private SqlDataAdapter da;public void UpDate1(DataSet dataset, string table)
{
cmd = new SqlCommand("insert into equipment(dw,e_number,e_name,e_type,e_brand,e_place,e_date,e_time)" + "values(@dw,@e_number,@e_name,@e_type,@e_brand,@e_place,@e_date,@e_time)", conn);
cmd.Parameters.Add("@dw", SqlDbType.NVarChar, 50, "dw");
cmd.Parameters.Add("@e_number", SqlDbType.NVarChar, 50, "e_number");
cmd.Parameters.Add("@e_name", SqlDbType.NVarChar, 50, "e_name");
cmd.Parameters.Add("@e_type", SqlDbType.NVarChar, 50, "e_type");
cmd.Parameters.Add("@e_brand", SqlDbType.NVarChar, 50, "e_brand");
cmd.Parameters.Add("@e_place", SqlDbType.NVarChar, 50, "e_place");
cmd.Parameters.Add("@e_data", SqlDbType.SmallDateTime, 4, "e_data");
cmd.Parameters.Add("@e_time", SqlDbType.SmallDateTime, 4, "e_time");
da.InsertCommand = cmd;
da.Update(dataset, table);
}
}我的excel表:
dw e_number e_name e_type e_brand e_place e_date e_time 第一行
aaa bbb ccc sss ddd eee 2011-01-01 2011-01-01 第二行运行没有错误,点击按钮后没反应,查找文件确实是上传了excel的。我想应该是上传数据的SqlDataAdapter.Update()函数有问题,它是怎么对应excel表内的列和数据库的表字段对应呢??麻烦各位朋友帮忙看看,比较急,谢谢了!!!!
解决方案 »
- ASP.NET 三层架构方法使用对象传值,未将对象引用设置到对象的实例。
- 在web.config加一行,怎么就出错,是关于编码设置的
- Enterprise Library2.0之Security Application Block如何使用,重分相谢
- 登陆站点-〉web服务-〉客户端,获取session的问题。
- 〖up有分〗【是不是字符串的时间比较不对?? 】~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~`
- 事件冒泡的问题.
- UITypeEditor不支持递归,各位大侠怎么解决.
- 对于这样的存储过程该如何调用。。。
- 关于数据库的疑问
- 新建项目的问题?
- 求解:asp.net画图不能正常显示
- 如何在界面刷新之后调用一个函数
protected void Button2_Click(object sender, EventArgs e)
{
string str = FileUpload1.FileName;
string FilePath = Server.MapPath("./FileUpload/") + str;
FileUpload1.PostedFile.SaveAs(FilePath);
ds = excel(FilePath);
GridView1.DataSource = ds.Tables["excel"].DefaultView;
GridView1.DataBind();
//d.UpDate1(ds, "excel");
}在页面加了个GridView,点击按钮后Gridview能显示出表格的内容,所以datetable是已存在的,现在应该就是dateadpter的update函数问题了,请问update怎么用呢??