作者TeemingVoid (TeemingVoid)
看板Database
标题Re: [SQL ] 想找出所有table中型别是varchar的栏位
时间Fri Feb 3 16:55:12 2012
※ 引述《kevin190 (夏日晚风)》之铭言:
: Dear all,
: 我用的DBMS是MS SQL SERVER 2008
: 因为资料库中早先有些table的栏位用varchar储存
: 现在想要把型态统一改成nvarchar
: 但是因为资料库中的table实在多到没时间一一检查
: 有什麽办法可以查出有哪些table的栏位是使用varchar储存呢?
: 谢谢
针对您的问题,请执行下列指令:
use <yourDB>
go
select o.name, c.name, t.name, c.length
from sysobjects o join syscolumns c on c.id = o.id
join systypes t on c.xtype = t.xtype
where o.type = 'U' and t.name = 'varchar'
order by o.name, c.name
go
个别资料表资料结构: (类似 Oracle 与 MySQL 的 describe 指令)
exec sp_columns 'YourTableName'
-- 资料表清单:
-- show tables;
select * from sysobjects where type = 'U'
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.38.85.178
※ 编辑: TeemingVoid 来自: 114.38.73.90 (02/03 19:23)
1F:推 hukhuk:高手出现了 02/03 20:50
2F:推 kevin190:感激不尽~~ 02/06 15:06