类型:编程辅助大小:63KB语言:中文评分:10.0标签:立即下载1、有没有办法对一个超过进行编程,让他可以实现在模板里超过表格里新增数据到数据库中,也就是在超过表格里放个新增按钮和保存按钮,实现将填入的数据保存入数据库中。2、或者将上述的超过表格嵌入在程序程序窗口里实现在超过表格里输入数据及新增按钮和保存按钮来保存的功能。你干嘛不把超过编辑好了以后再导入数据库呢?这方面比较容易实现,要想在超过中编程和数据库交互比较困难winform。中可以使用数据网格控件实现超过的编辑功能,这个和数据库交互很容易实现私人空间btnOpen_Click(对象发送者,EventArgs e){ open file dialog ofd=new open file dialog();ofd .过滤器='* '。xls | ';ofd .CheckFileExists=trueofd .CheckPathExists=trueofd .ShowDialog();this.textBox1.Text=ofd .文件名。ToString();}私人作废BTN插入_点击(对象发送方,事件参数e){ DataSet ds=new DataSet();字符串strCon=' Provider=Microsoft .喷气机。OLEDB.4.0 '数据源='这个。文本框1。文本';扩展属性=Excel 8.0 ';oledb连接myknn=新的oledb连接(STrcon);字符串SQL='选择* FROM[工作表1 $]';试试{我的朋友.open();OleDbDataAdapter ODA=new OleDbDataAdapter(SQL,myCnn);官方发展援助填充(ds,'[表1 $]');我的朋友close();}catch (Exception ex){MessageBox .显示(例如。消息);}字符串服务器=这个。txtserver。文字。trim();字符串db=这个。txtdb。文字。trim();字符串用户名=这个。txtusername。文字。trim();字符串userpwd=this。txtuserpwd。文字。trim();//这里的连接用来将数据写入SQLDBstring connectionString=@ ' server=' server ';数据库=' dbuid="用户名";pwd="用户pwd ";SqlConnection con=new SqlConnection(connectionString);字符串' sqlGetAllDB='从tb_Lot中选择* ';sqldatadapter daall db=new sqldatadapter(sqlGetAllDB,con);DataSet dsAllDB=new DataSet();DataGrid my grid=new DataGrid();我的网格begin nit();我的网格。位置=新系统。绘图点(10,240);我的网格。宽度=1020;我的网格。高度=300;这个。控件。添加(我的网格);我的网格end init();我的网格SetDataBinding(ds,'[sheet 1 $]');请尝试{int num=ds .表[0].行。计数;for(int I=0;i numi ){string ch1=mygrid[i,0].ToString();字符串ch2=mygrid[i,1].ToString();字符串ch3=mygrid[i,2].ToString();字符串strii=' select * into from ' ds .表[0]。表结构字符串strsql="插入到tb_Lot值中(' ch1 ',' CH2 ',' CH3 ')";con . Open();系统。数据。数据表dt=新系统数据。数据表(' TB _ Lot ');sqldatadapter da=new sqldatadapter(strsql,con);爸爸。填充(dt);' this.lblmessage.Text='数据导入成功!这个。GroupBox 2。可见=真;daAllDB .填充(dsAllDB,‘TB _ Lot’);这个。datagridview 1。数据源=dsAllDB .表[0];con . Close();} } catch(Exception ex){ MessageBox .显示('数据库连接失败!');}}还不如这样直接将超过的数据导入的数据库表中,在超过里面来操作的话难度比较高。这方法我自己用过,可以将超过的数据逐条导入的表中,前提是超过的列数和表中的字段必须对应。楼主可以研究下超过里的VBA,顺便再看看使用里的ADODB .