熱點推薦:
您现在的位置: 電腦知識網 >> 操作系統 >> Windows優化 >> 正文

如何將表/查詢存儲為標准的XML文件

2022-06-13   來源: Windows優化 

  *存為XML
  將表/查詢存儲為標准的XML文件
  */
  
  /*調用示例
  用SQL用winows身份驗證的情況
  exec p_savexml @sql=地區資料@fname=c:\地區資料xml
  
  用指定的用戶
  exec p_savexml @sql=地區資料@fname=c:\地區資料xml@userid=sa
  */
  if exists (select * from dbosysobjects where id = object_id(N[dbo][p_savexml]) and OBJECTPROPERTY(id NIsProcedure) = )
  drop procedure [dbo][p_savexml]
  GO
  
  create proc p_savexml
  @sql varchar()   要保存的表/視圖/SQL查詢語句
  @fname varchar()=c:\tmpxml 保存的XML文件名
  @userid varchar()=  用戶名如果為nt驗證方式則為
  @password varchar()=  密碼
  as
  declare @err int@src varchar()@desc varchar()
  declare @obj int@constr varchar()
  if isnull(@userid)=
  set @constr=Provider=SQLOLEDB;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=
  +db_name()+;Data Source=+@@servername
  else
  set @constr=Provider=SQLOLEDB;Persist Security Info=True;
  +User ID=+@userid+;Password=+isnull(@password)
  +;Initial Catalog=+db_name()+;Data Source=+@@servername
  
  exec @err=sp_oacreate adodbrecordset@obj out
  if @err<> goto lberr
  
  exec @err=sp_oamethod @objopennull@sql@constr
  if @err<> goto lberr
  
  set @sql=del +@fname
  exec masterxp_cmdshell @sqlno_output
  exec @err=sp_oamethod @objsavenull@fname
  if @err<> goto lberr
  
  exec @err=sp_oadestroy @obj
  return
  
  lberr:
  exec sp_oageterrorinfo @src out@desc out
  select cast(@err as varbinary()) as 錯誤號
  @src as 錯誤源@desc as 錯誤描述
  go
  
  

From:http://tw.wingwit.com/Article/os/youhua/201401/30199.html
    推薦文章
    Copyright © 2005-2022 電腦知識網 Computer Knowledge   All rights reserved.