--设置sql 可以获取实例名称
sp_configure
'xp_cmdshell'
,
1
;
go
reconfigure
;
go
--
获取实例名
EXEC
sys
.
xp_cmdshell
'sqlcmd -Lc'
--
获取所有数据库
Select
*
FROM
Master
..
SysDatabases
order
by
Name
--
获取数据库所有表
use
yeekang
---
数据库名称
select
*
from
sysobjects
where
type
=
'U'
order
by
name
--
获取指定表字段
select
*
from
syscolumns
where
id
=
OBJECT_ID
(
'Userinfo'
)
SELECT
表名
=
case
when
a
.
colorder
=
1
then
d
.
name
else
''
end
,
表说明
=
case
when
a
.
colorder
=
1
then
isnull
(
f
.
value
,
''
)
else
''
end
,
字段序号
=
a
.
colorder
,
字段名
=
a
.
name
,
标识
=
case
when
COLUMNPROPERTY
(
a
.
id
,
a
.
name
,
'IsIdentity'
)=
1
then
'
√
'
else
''
end
,
主键
=
case
when
exists(
SELECT
1
FROM
sysobjects
where
xtype
=
'PK'
and
name
in
(
SELECT
name
FROM
sysindexes
WHERE
indid
in(
SELECT
indid
FROM
sysindexkeys
WHERE
id
=
a
.
id
AND
colid
=
a
.
colid
)))
then
'
√
'
else
''
end
,
类型
=
b
.
name
,
占用字节数
=
a
.
length
,
长度
=
COLUMNPROPERTY
(
a
.
id
,
a
.
name
,
'PRECISION'
),
小数位数
=
isnull
(
COLUMNPROPERTY
(
a
.
id
,
a
.
name
,
'Scale'
),
0
),
允许空
=
case
when
a
.
isnullable
=
1
then
'
√
'
else
''
end
,
默认值
=
isnull
(
e
.
text
,
''
),
字段说明
=
isnull
(
g
.
[value]
,
''
)
FROM
syscolumns
a
left
join
systypes
b
on
a
.
xusertype
=
b
.
xusertype
inner
join
sysobjects
d
on
a
.
id
=
d
.
id
and
d
.
xtype
=
'U'
and
d
.
name
<>
'dtproperties'
left
join
syscomments
e
on
a
.
cdefault
=
e
.
id
left
join
sys
.
extended_properties
g
on
a
.
id
=
g
.
major_id
and
a
.
colid
=
g
.
minor_id
left
join
sys
.
extended_properties
f
on
d
.
id
=
f
.
major_id
and
f
.
minor_id
=
0
where
a
.
id
=
OBJECT_ID
(
'Userinfo'
)
order
by
a
.
id
,
a
.
colorder