生成xml表结构.sql

来自「一个很好的sqlserver2000数据库函数包希望大家喜欢」· SQL 代码 · 共 25 行

SQL
25
字号
--表结构生成XML文档

create table ##tb(re varchar(8000))
insert into ##tb 
select '<?xml version=''1.0'' encoding="gb2312"?>
<数据库>'+db_name()

insert into ##tb
select case b.colid when 1 then '<表名>'+a.name else '	' end+'
	<字段 名称="'+b.name+'"'+case when g.value is null then ''
		else ' 说明="'+cast(g.value as varchar(8000))+'"' end+'/>'
	+case b.colid when (select max(colid) from syscolumns where id=a.id)
		then '
</表名>' else '' end
from sysobjects a 
	join syscolumns b on a.id=b.id
	left join sysproperties g on b.id=g.id and b.colid=g.smallid  
where a.xtype='U'
order by a.name,b.colid

insert into ##tb values('</数据库>')

--生成 c:\a.xml
exec master..xp_cmdshell 'bcp ##tb out c:\a.xml /c'
drop table ##tb

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?