将Excel数据导入到数据库中

用户还没有信息化之前,他们的数据往往是存放于Excel中的。因此,MIS项目的第一步,就是要将这些数据初始化到数据库中。借助于.NET中的SqlDataSource控件,可以轻松的实现这一过程。

    首先,要对现有的Excel表格做一些调整,不要产生合并行,合并列,将首行作为标题行。然后,打开控制面板->管理工具中的数据源对话框,添加一个Excel数据源。

    接着,在VS工程箱中将一个SqlDataSource数据源控件添加到页面中,选择ODBC,从而可以得到刚刚设置好的Excel文件。下面配置SQL语句的的一步很关键,一定要选择自定义SQL语句,在文本框内输入如下表达式下:

SELECT   *   FROM   [ SHEET1$ ]

“sheet1”代表Execl标签页的名称。此时,在预览窗口上可以看到Excel中的第一行被解读为了表头。

    这样一来,就可以通过SqlDataSource将Excel中的数据存转为一个DataSet,然后再遍历该数据集,从而将数据插入到新表中。

  protected   void  Page_Load( object  sender, EventArgs e)
 {
        DataSourceSelectArguments arg 
=   new  DataSourceSelectArguments();


        System.Data.DataView dv 
=  (System.Data.DataView)SqlDataSource1.Select(arg);
               
        
int  len  =  GridView1.Rows.Count;

        
for  ( int  i  =   0 ; i  <  len; i ++ )
        {
            
            
string  strInsert  =   " INSERT INTO PMIS.A  (BM,PJXM,BZF,PFBZ,CZFF,PFFF,BZ,SSBM,JB) VALUES(BM,:PJXM,:BZF,:PFBZ,:CZFF,:PFFF,:BZ,:SSBM,:JB) " ;

            comm 
=   new  OracleCommand(strInsert, conn);

            comm.Parameters.AddWithValue(
" :BM " , dv.Table.Rows[i][ " a " ].ToString());

            
//  ......

            comm.ExecuteNonQuery();
        }
 }

注意,以上的方法中Excel文件不能存放在桌面上,否则会遇到权限的问题。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值