您的位置:程序门 -> .net技术 -> c#



excel导入到access


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


excel导入到access[已结贴,结贴人:liujb526]
发表于:2007-01-30 17:18:15 楼主
哪位高人救救我啊.
现在我把excel数据读到dataset里面,怎么操作才能把数据存到access数据库啊
今天搞了一天了.
先谢谢了
发表于:2007-01-30 17:30:011楼 得分:5
再开一个access连接,   从dataset中读出来,写到access数据库里面
发表于:2007-01-30 18:49:472楼 得分:0
能不能在说明白点啊
发表于:2007-01-30 22:43:333楼 得分:35
oledbconnection       mycnn   =   new   oledbconnection( "provider=microsoft.jet.oledb.4.0;data   source=f:\\dazhu12.mdb ");
//新建dataset2,导入另外一个dataset中的数据
                        oledbdataadapter   myada2   =   new   oledbdataadapter( "select   *   from   t1 ",   mycnn);
                        dataset   myds2   =   new   dataset();
                        myada2.fill(myds2,   "tt ");

                        datarow   r   =   null;
                        for   (int   i   =   0;   i   <   myds.tables[ "t "].rows.count;   i++)
                        {
                                r   =   myds2.tables[ "tt "].newrow();
                                for   (int   j   =   0;   j   <   5;   j++)
                                {
                                        r[j]   =   myds.tables[ "t "].rows[i][j].tostring();
                                }
                                myds2.tables[ "tt "].rows.add(r);
                        }
                     
                          this.datagridview1.datasource   =   myds2.tables[ "tt "].defaultview;
                        messagebox.show( "数据导入成功! ");
                   
                                            //更新数据库
                        oledbcommand   mycmd   =   new   oledbcommand( "insert   into   t1(id,[m_id],[t_id],[order],topic)   values(@1,@2,@3,@4,@5) ",   mycnn);
                        mycmd.parameters.add( "@id1 ",   system.data.oledb.oledbtype.integer,   10,   "id ");
                        mycmd.parameters.add( "@m1 ",   system.data.oledb.oledbtype.integer,   10,   "m_id ");
                        mycmd.parameters.add( "@t1 ",   system.data.oledb.oledbtype.integer,   10,   "t_id ");
                        mycmd.parameters.add( "@o1 ",   system.data.oledb.oledbtype.integer,   10,   "order ");
                        mycmd.parameters.add( "@t2 ",   system.data.oledb.oledbtype.char,   30,   "topic ");

                        myada2.insertcommand   =   mycmd;

                        myada2.update(myds2,   "tt ");
                        mycnn.close();
                        messagebox.show( "数据更新成功! ");
发表于:2007-01-30 22:44:144楼 得分:0
dataset有个merge方法合并数据的,但我没有用过,你可试试
发表于:2007-01-30 23:23:285楼 得分:10
如果你的数据库中的表有主键,那就简单多了...

用oledbdataadapter+oledbcommandbuilder...再用dataadapter.update(datatable)即可..


快速检索

最新资讯
热门点击