zoukankan      html  css  js  c++  java
  • SQLServer获取Excel中所有Sheet

     

    E盘根目录新建一个Excel文件aa.xls后测试如下代码

    use tempdb
    go
    if (object_id ('udf_getExcelTableNames' ) is not null )
        drop function dbo .udf_getExcelTableNames
    go
    create function udf_getExcelTableNames (@filename varchar (1000 ))
    returns @t table (id int , name varchar (255 ))
    as
    begin
        declare   
        @error int , @obj int , @c int , @sheetname varchar (255 ) , @sheetstring varchar (255 )
      
        exec @error = sp_oacreate 'Excel.Application' , @obj   out  
        exec @error = sp_oamethod @obj , 'Workbooks.Open' , @c out , @filename
        exec @error = sp_oagetproperty @obj , 'ActiveWorkbook.Sheets.Count' , @c    out
        while (@c > 0 )
        begin
            set @sheetstring = 'ActiveWorkbook.Sheets(' + ltrim (@c )+ ').Name'
            exec @error = sp_oagetproperty @obj , @sheetstring , @sheetname    out
            insert into @t select @c , @sheetname
            set @c = @c - 1
        end
        exec @error = sp_oadestroy @obj  
        return
    end
    go

    select * from dbo .udf_getExcelTableNames ('e:\aa.xls' )

    /*--测试结果
    3    Sheet3
    2    Sheet2
    1    Sheet1
    */

     

  • 相关阅读:
    发布SpringBoot项目到Docker容器
    Docker网络
    Docker镜像发布到阿里云
    Docker制作Tomcat镜像
    DockerFile指令
    Docker命令
    kafka安装与使用
    刷题第2天
    刷题第1天
    UVA 11107 Life Forms
  • 原文地址:https://www.cnblogs.com/AndyGe/p/1919341.html
Copyright © 2011-2022 走看看