將mater庫中的系統(tǒng)存儲(chǔ)過程批量生成*.sql文件 通用
導(dǎo)讀:1建站知識(shí)最近因?yàn)橄到y(tǒng)需要,需要將master庫的所有和業(yè)務(wù)相關(guān)的存儲(chǔ)過程批量生成 存儲(chǔ)過程名.sql 文件,默認(rèn)是不可以導(dǎo)出的網(wǎng)站seo優(yōu)化培訓(xùn)如何seo優(yōu)化推廣網(wǎng)站。
大家都知道系統(tǒng)存儲(chǔ)過程是無法用工具導(dǎo)出的(大家可以試試 >任務(wù)>生成SQL腳本) 因?yàn)橄到y(tǒng)存儲(chǔ)過程一般是不讓開發(fā)人員修改的。 需要知識(shí): 1、xp_cmdshell命令的使用 2、sp_MS_marksystemobject 標(biāo)記系統(tǒng)存儲(chǔ)過程的方法 3、dos 命令,如 type,>> 等 4、bcp 命令的使用
復(fù)制代碼 代碼如下:
use master go if OBJECT_ID('pr_procToSql') is not null drop proc pr_procToSql go create proc pr_procToSql ( @服務(wù)器名 varchar(100) ,@用戶名 varchar(100) ,@密碼 varchar(100) ,@path varchar(200) ,@database varchar(200) ,@sysproc int='0' --是否標(biāo)記為系統(tǒng)函數(shù) 1:是,0:否 ,@proc_name varchar(100)='' --默認(rèn)是所有,可以模糊搜索 ,@savetype varchar(200)='.sql' --默認(rèn)保存為sql腳本 ) as /* 版本:v1 作者:達(dá)摩 日期:2012-04-13 功能: 1\將master庫的系統(tǒng)存儲(chǔ)過程批量生成文件(系統(tǒng)存儲(chǔ)過程無法自動(dòng)導(dǎo)出) 2\可以將所有類型的存儲(chǔ)過程導(dǎo)出 3\可以標(biāo)記上系統(tǒng)存儲(chǔ)過程 調(diào)用: exec pr_procToSql '.','sa','H4ymH@$RTd','e:\tom\master\','master','1',‘' exec pr_procToSql '.','sa','a123456'seo網(wǎng)站關(guān)鍵詞優(yōu)化,'e:\sql\','agt_trad','','pr_','.sql' */ set nocount on declare @sp nvarchar(500),@s nvarchar(2000),@row int,@id int,@s_add varchar(2000) set @s=' use '+@database exec(@s) if object_id('tempdb..#t') is not null drop table tempdb..#t create table tempdb..#t(name varchar(2000) , id int IDENTITY(1,1) not null ) exec(' insert into tempdb..#t(name) select name --into TEMPDB..#T from '+@database+'..sysobjects where xtype=''p'' and name like '''+@proc_name+'%'' ') select @row=COUNT(*) from tempdb..#t print '共生成['+cast(@row as varchar)+']個(gè)存儲(chǔ)過程' set @id=1 while @row>=@id begin select top 1 @sp=name from tempdb..#T where id=@id if OBJECT_ID('tempdb..test') is not null drop table tempdb..test --增加use master go set @s_add='echo use ['+@database+']>>'+@path+@sp+@savetype exec xp_cmdshell @s_add建設(shè)網(wǎng)站 set @s_add='echo GO>>'+@path+@sp+@savetype exec xp_cmdshell @s_add set @s_add='echo IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N''[dbo].['+@sp+']'') AND type in (N''P'', N''PC''))>>'+@path+@sp+@savetype exec xp_cmdshell @s_add set @s_add='echo DROP PROCEDURE [dbo].['+@sp+']>>'+@path+@sp+@savetype exec xp_cmdshell @s_add set @s_add='echo GO>>'+@path+@sp+@savetype exec xp_cmdshell @s_add set @s_add='echo SET ANSI_NULLS ON>>'+@path+@sp+@savetype exec xp_cmdshell @s_add set @s_add='echo GO>>'+@path+@sp+@savetype exec xp_cmdshell @s_add set @s_add='echo SET QUOTED_IDENTIFIER ON>>'+@path+@sp+@savetype exec xp_cmdshell @s_add set @s_add='echo GO>>'+@path+@sp+@savetype exec xp_cmdshell @s_add select @s=' select text into tempdb..test from '+@database+'..syscomments where id=OBJECT_ID('''+@database+'..'+@sp+''') ' exec(@s) --select * from tempdb..test select @s='exec xp_cmdshell '+'''bcp tempdb..test out '+@path+@sp+cast(@id as varchar)+@savetype+' -c -S '+@服務(wù)器名+' -U '+@用戶名+' -P '+@密碼+'''' exec(@s) --將前面加上use master 信息追加到 最前面 set @s_add='type '+@path+@sp+CAST(@id as varchar)+@savetype+'>>'+@path+@sp+@savetype exec xp_cmdshell @s_add set @s_add='echo GO>>'+@path+@sp+@savetype exec xp_cmdshell @s_add if @sysproc='1' begin --在最后面加上標(biāo)記為系統(tǒng)存儲(chǔ)過程 set @s_add='echo exec sp_MS_marksystemobject ''['+@sp+']''>>'+@path+@sp+@savetype exec xp_cmdshell @s_add set @s_add='echo GO>>'+@path+@sp+@savetype exec xp_cmdshell @s_add print '標(biāo)記第['+cast(@id as varchar)+']個(gè)為系統(tǒng)存儲(chǔ)過程:'+@sp end set @s_add='del '+@path+@sp+CAST(@id as varc網(wǎng)站seo優(yōu)化課程har)+@savetype exec xp_cmdshell @s_add print '生成第['+cast(@id as varchar)+']個(gè)存儲(chǔ)過程:'+@sp delete from tempdb..#T where id=@id set @id=@id+1 end
聲明: 本文由我的SEOUC技術(shù)文章主頁發(fā)布于:2023-05-22 ,文章將mater庫中的系統(tǒng)存儲(chǔ)過程批量生成*.sql文件 通用主要講述批量,存儲(chǔ)過程,將mater庫中的系統(tǒng)存儲(chǔ)過程批量生網(wǎng)站建設(shè)源碼以及服務(wù)器配置搭建相關(guān)技術(shù)文章。轉(zhuǎn)載請(qǐng)保留鏈接: http://www.bifwcx.com/article/web_4472.html
為你推薦與將mater庫中的系統(tǒng)存儲(chǔ)過程批量生成*.sql文件 通用相關(guān)的文章
-
通王TWCMS 2.0.3網(wǎng)站模板程序下載
(126)人喜歡 2024-01-15 -
Windows官方原版在哪里下載
(175)人喜歡 2024-01-15 -
WordPress網(wǎng)站模板發(fā)帖標(biāo)題顏色設(shè)置
(131)人喜歡 2024-01-07 -
修改discuz論壇帖子標(biāo)題80字符的長度限制
(249)人喜歡 2024-01-07 -
wordpress程序調(diào)用不帶超鏈接的Tag標(biāo)簽
(234)人喜歡 2024-01-05 -
網(wǎng)站在不同時(shí)期需調(diào)整內(nèi)容更新的方向
(112)人喜歡 2023-08-12