"insert into sql数据库的表名( 字段) select 字段 from openrowset('microsoft.jet.oledb.4.0','excel 8.0;hdr=yes;database=Excel表的路径,sheet1$)"

解决方案 »

  1.   

    我要的是asp界面下的代码,谢谢大家
      

  2.   

    直接执行sql语句就可以了.
    一、SQLServer和Access1、查询Access中数据的方法:select * from OpenRowSet(''microsoft.jet.oledb.4.0'','';database=c:\db2.mdb'',''select * from serv_user'')或select * from OpenDataSource(''Microsoft.Jet.OLEDB.4.0'',''Data Source="c:\DB2.mdb";User ID=Admin;Password='')...serv_user2、从SQLServer向Access写数据:insert into OpenRowSet(''microsoft.jet.oledb.4.0'','';database=c:\db2.mdb'',''select * from Accee表'')
    select * from SQLServer表
    或用BCPmaster..xp_cmdshell''bcp "serv-htjs.dbo.serv_user" out  "c:\db3.mdb" -c -q -S"." -U"sa" -P"sa"''上面的区别主要是:OpenRowSet需要mdb和表存在,BCP会在不存在的时候生成该mdb3、从Access向SQLServer写数据:有了上面的基础,这个就很简单了insert into SQLServer表 select * from
    OpenRowSet(''microsoft.jet.oledb.4.0'','';database=c:\db2.mdb'',''select * from Accee表'')或用BCPmaster..xp_cmdshell''bcp "serv-htjs.dbo.serv_user" in  "c:\db3.mdb" -c -q -S"." -U"sa" -P"sa"''4、删除Access数据:delete from OpenRowSet(''microsoft.jet.oledb.4.0'','';database=c:\db2.mdb'',''select * from serv_user'')
    where lock=05、修改Access数据:update OpenRowSet(''microsoft.jet.oledb.4.0'','';database=c:\db2.mdb'',''select * from serv_user'')
    set lock=1SQLServer和Access大致就这么多。
    二、SQLServer和Excel
    1、向Excel查询select * from OpenRowSet(''microsoft.jet.oledb.4.0'',''Excel 8.0;HDR=yes;database=c:\book1.xls;'',''select * from [Sheet1$]'') where c like ''%f%''select * from
    OPENROWSET(''MICROSOFT.JET.OLEDB.4.0''
    ,''Excel 5.0;HDR=YES;IMEX=2;DATABASE=c:\book1.xls'',[sheet1$])1)hdr=yes时可以把xls的第1行作为字段看待,如第1个中hdr=no的话,where时就会报错
    2)[]和美圆$必须要,否则M$可不认这个账2、修改Execlupdate OpenRowSet(''microsoft.jet.oledb.4.0'',''Excel 8.0;hdr=yes;database=c:\book1.xls;'',''select * from [Sheet1$]'')
    set a=''erquan'' where c like ''%f%''3、导入导出
    insert into OpenRowSet(''microsoft.jet.oledb.4.0'',''Excel 8.0;hdr=yes;database=c:\book1.xls;'',''select * from [Sheet2$]'')(id,name)
    select id,name from serv_user或BCPmaster..xp_cmdshell''bcp "serv-htjs.dbo.serv_user" out  "c:\book2.xls" -c -q -S"." -U"sa" -P"sa"''从Excel向SQLServer导入:select * into serv_user_bak
    from OpenRowSet(''microsoft.jet.oledb.4.0'',''Excel 8.0;HDR=yes;database=c:\book1.xls;'',''select * from [Sheet1$]'')如果表serv_user_bak不存在,则创建有关BCP和分布式查询的详细解答,就查SQLServer自带的帮助吧。
    SQLServer和txt文件、HTML文件、VFP文件的数据交换都显得非常容易了。其实这些内容在帮助里都有,偶只不过是总结了一下,方便大家参考,呵呵~~以上内容都经过测试~~
      

  3.   

    客户端excel表如何导入远程sql server服务器<%
    '//客户端上传Excel,保存为upload/Excel.xls
    .....'//打开sql server
    ....
    Conn.Open ...'//打开Excel
    Set ConnExcel = Server.Createobject("ADODB.Connection")
    ExcelStr = "DBQ=" + server.mappath("upload/Excel.xls") + ";DRIVER={Microsoft Excel Driver (*.xls)};"
    ConnExcel.Open ExcelStrSet RSExcel = Server.CreateObject("ADODB.Recordset")
    SQLExcel = "Select * From [Sheet1$]"  '//你的Sheet1名
    RSExcel.Open  SQLExcel, ConnExcel, 3, 3Set RS = Server.CreateObject("ADODB.RecordSet")
    SQL = "Select * From [RegUser]"
    RS.Open  SQL, Conn, 1, 3
    '----------------------------
    '//添加begin
      Do While Not RSExcel.EOF
       RS.AddNew
       For i=0 To  RSExcel.Fields.Count-1
           RS(i)=Trim(RSExcel(i))
       Next
       RS.Update 
       RSExcel.MoveNext
      Loop
    '//添加end
    '----------------------------
    RSExcel.Close 
    Set RSExcel = Nothing
    RS.Close()
    Set RS = Nothing
    %>
      

  4.   

    我的意思是有一个asp界面可以选择文件,文件是excel文件或者是类excel文件,然后,点击上传就传到服务器的数据库中,选择的文件在客户端,要能选择的,不要固定在什么c:\book.xls..的语句。