本篇內(nèi)容主要講解“SQL導入和導出Excel數(shù)據(jù)的語句”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“SQL導入和導出Excel數(shù)據(jù)的語句”吧!
成都創(chuàng)新互聯(lián)專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務,包含不限于成都網(wǎng)站制作、網(wǎng)站設計、唐山網(wǎng)絡推廣、微信小程序定制開發(fā)、唐山網(wǎng)絡營銷、唐山企業(yè)策劃、唐山品牌公關、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運營等,從售前售中售后,我們都將竭誠為您服務,您的肯定,是我們最大的嘉獎;成都創(chuàng)新互聯(lián)為所有大學生創(chuàng)業(yè)者提供唐山建站搭建服務,24小時服務熱線:028-86922220,官方網(wǎng)址:www.cdcxhl.com
--從Excel文件中,導入數(shù)據(jù)到SQL數(shù)據(jù)庫中,很簡單,直接用下面的語句: /*===================================================================*/ --如果接受數(shù)據(jù)導入的表已經(jīng)存在 insert into 表 select * from OPENROWSET('MICROSOFT.JET.OLEDB.4.0' ,'Excel 5.0;HDR=YES;DATABASE=c:\test.xls',sheet1$) --如果導入數(shù)據(jù)并生成表 select * into 表 from OPENROWSET('MICROSOFT.JET.OLEDB.4.0' ,'Excel 5.0;HDR=YES;DATABASE=c:\test.xls',sheet1$) /*===================================================================*/ --如果從SQL數(shù)據(jù)庫中,導出數(shù)據(jù)到Excel,如果Excel文件已經(jīng)存在,而且已經(jīng)按照要接收的數(shù)據(jù)創(chuàng)建好表頭,就可以簡單的用: insert into OPENROWSET('MICROSOFT.JET.OLEDB.4.0' ,'Excel 5.0;HDR=YES;DATABASE=c:\test.xls',sheet1$) select * from 表 --如果Excel文件不存在,也可以用BCP來導成類Excel的文件,注意大小寫: --導出表的情況 EXEC master..xp_cmdshell 'bcp 數(shù)據(jù)庫名.dbo.表名 out "c:\test.xls" /c -/S"0 goto lberr exec @err=sp_oamethod @obj,'open',null,@constr if @err<>0 goto lberr --創(chuàng)建表的SQL select @sql='',@fdlist='' select @fdlist=@fdlist+','+a.name ,@sql=@sql+',['+a.name+'] ' +case when b.name in('char','nchar','varchar','nvarchar') then 'text('+cast(case when a.length>255 then 255 else a.length end as varchar)+')' when b.name in('tynyint','int','bigint','tinyint') then 'int' when b.name in('smalldatetime','datetime') then 'datetime' when b.name in('money','smallmoney') then 'money' else b.name end FROM syscolumns a left join systypes b on a.xtype=b.xusertype where b.name not in('image','text','uniqueidentifier','sql_variant','ntext','varbinary','binary','timestamp') and object_id(@tbname)=id select @sql='create table ['+@tbname +']('+substring(@sql,2,8000)+')' ,@fdlist=substring(@fdlist,2,8000) exec @err=sp_oamethod @obj,'execute',@out out,@sql if @err<>0 goto lberr exec @err=sp_oadestroy @obj --導入數(shù)據(jù) set @sql='openrowset(''MICROSOFT.JET.OLEDB.4.0'',''Excel 5.0;HDR=YES ;DATABASE='+@path+@fname+''',['+@tbname+'$])' exec('insert into '+@sql+'('+@fdlist+') select '+@fdlist+' from '+@tbname) return lberr: exec sp_oageterrorinfo 0,@src out,@desc out lbexit: select cast(@err as varbinary(4)) as 錯誤號 ,@src as 錯誤源,@desc as 錯誤描述 select @sql,@constr,@fdlist
到此,相信大家對“SQL導入和導出Excel數(shù)據(jù)的語句”有了更深的了解,不妨來實際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關內(nèi)容可以進入相關頻道進行查詢,關注我們,繼續(xù)學習!