欢迎光临
我们一直在努力

在查询分析器中,通过SQLDMO来得到脚本-数据库专栏,SQL Server

建站超值云服务器,限时71元/月

–用以下脚本,可以得到任意对象的创建时的脚本,网上好像也流传有,但属于自己的东西用着还是感觉舒坦.
–增加快捷键后,然后在查询分析器中按相应的快捷键就能显示对象的脚本.
set quoted_identifier on
go
set ansi_nulls on
go

 

 

alter    procedure sp_script
        @objectname varchar(50)
as
declare @databasename varchar(50)

set @databasename = db_name(db_id())

declare        @str varchar(4000)

declare @object int
declare @objectdatabase int
declare @hr int
declare @src varchar(255), @desc varchar(255)
declare @databasecount int, @current int, @database int

declare @table int, @tables int

exec @hr = sp_oacreate sqldmo.sqlserver, @object out
if @hr <> 0
begin
     exec sp_oageterrorinfo @object, @src out, @desc out
   select hr=convert(varbinary(4),@hr), source=@src, description=@desc
    return
end

exec @hr = sp_oamethod @object, connect, null, @@servername,
    sa,

if @hr <> 0
begin
   exec sp_oageterrorinfo @object
    return
end

exec @hr = sp_oagetproperty @object, databases, @objectdatabase output

if @hr <> 0
begin
   exec sp_oageterrorinfo @objectdatabase, @src out, @desc out
   select hr=convert(varbinary(4),@hr), source=@src, description=@desc
    return
end

 

exec @hr = sp_oagetproperty @objectdatabase, count, @databasecount output
if @hr <> 0
begin
   exec sp_oageterrorinfo @objectdatabase, @src out, @desc out
   select hr=convert(varbinary(4),@hr), source=@src, description=@desc
    return
end

set @current = 1
loop1:

  exec @hr = sp_oamethod @objectdatabase, item, @database output, @databasename

  if @hr <> 0
  begin
    exec sp_oageterrorinfo @objectdatabase
     return
  end

exec @hr = sp_oamethod @database, getobjectbyname, @table output, @objectname

  if @hr <> 0
  begin
    exec sp_oageterrorinfo @database
     return
  end

exec @hr = sp_oamethod @table, script, @str output, 5
  if @hr <> 0
  begin
    exec sp_oageterrorinfo @table
     return
  end

print @str

 

 

go
set quoted_identifier off
go
set ansi_nulls on
go

 

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » 在查询分析器中,通过SQLDMO来得到脚本-数据库专栏,SQL Server
分享到: 更多 (0)

相关推荐

  • 暂无文章