sql code
setansi_nulls
onset
quoted_identifier
ongo
alter
proc
[dbo].
[p_db_wsp
]@dbname
varchar(50
) ,
--資料庫名
@path
varchar
(100
) ,
--實體類所在目錄名,如d:/my/models
@namespace
varchar(50
) --
實體類命名空間,預設值為models
as--
判斷資料庫是否存在
if(
db_id
(@dbname
) is
notnull
)
begin
if(
isnull
(@namespace
, '') =
'')
set@namespace='
models'--
允許配置高階選項
exec
sp_configure
'show advanced options',
1--重新配置
reconfigure
--啟用ole automation procedures
exec
sp_configure
'ole automation procedures',
1--啟用xp_cmdshell,可以向磁碟中寫入檔案
exec
sp_configure
'xp_cmdshell',
1--重新配置
reconfigure
declare
@dbsql
varchar
(1000
) ,
@tablename
varchar
(100
)
set@dbsql='
declare wsp cursor for select name from '+
@dbname+'
..sysobjects where xtype=''u
''and name <>
''sysdiagrams
'''exec
(@dbsql
)
open
wsp
fetch
wsp
into
@tablename
--使用游標迴圈遍歷資料庫中每個表
while
( @@fetch_status=0
)
begin
--根據表中字段組合實體類中的字段和屬性
declare
@nsql
nvarchar
(4000
) ,
@sql
varchar
(8000
)
set@nsql='
select @s=isnull(@s+char(9)+
''private '',
''using system;'+
char(13
) +'using system.collections.generic;'+
char(13
) +'using system.text;'+
char(13
) +'
namespace '+
@namespace
+char(13
) +'''
+char(13)
from '+
@dbname+'
..syscolumns b,
(select distinct name,xtype from '+
@dbname+'
..systypes where status=0) a
where a.xtype=b.xtype and b.id=object_id(
'''+
@dbname+'
..'+@tablename
+''')'
exec
sp_executesql
@nsql
, n'
@s varchar(8000) output',
@sql
output
set@sql
=@sql
+char(9
) +'}
'+char(13
) +'}
'--print @sql
declare
@err
int,
@fso
int,
@fleexists
bit,
@file
varchar
(100
)
set@file
=@path+'
/'+@tablename+'
.cs'
exec
@err
=sp_oacreate
'scripting.filesystemobject',
@fso
output
exec
@err
=sp_oamethod
@fso, '
fileexists',
@fleexists
output,
@file
exec
@err
=sp_oadestroy
@fso
if@fleexists!=0
exec('
exec xp_cmdshell
''del '+
@file
+''''
) --
存在則刪除
exec('
exec xp_cmdshell
''echo '+
@sql+'
> '+
@file
+''''
) --
將文字寫進檔案中
set@sql
=null
fetch
wsp
into
@tablename
endclose
wsp
deallocate
wsp
'生成成功!
'end
else
'資料庫不存在!
'
實現ORM模型一鍵生成實體類
使用方法 配置resources generactor.properties檔案 在com.dgy.main中執行main方法 主要的方法 取得mysql資料庫的表的字段資訊 查詢乙個表的所有列資訊 param tablename return public static mapgetcloumin...
一鍵生成索引新語句
select d.name c.name a.name a.type desc begin try if object id quotename d.name quotename c.name is not null and not exists select 1 from sys.indexes ...
一鍵生成官網 全
你好!不管你是計算機小白或者是老手,這些知識都能對您用幫助!1 阿里雲伺服器一台 centos7.4 64 最少1核2g 並開通oss,並準備好解析好的網域名稱 2 安全組開放80埠 22埠 3 遠端登陸伺服器 4 命令列鍵入 大概60分鐘左右完成安裝 wget p root wget p root...