2013-04-20工作
来源:互联网 发布:华为删除内置软件 编辑:程序博客网 时间:2024/05/16 06:46
SELECT SO.NAME AS "Table Name", SC.NAME AS "Column Name",SM.TEXT AS "Default Value"
FROM dbo.sysobjects so
INNER JOIN dbo.syscolumns sc ON so.id = sc.id
LEFT JOIN dbo.syscomments sm ON SC.cdefault = sm.id
WHERE SO.xtype = 'U' and ( sm.text is not null)
ORDER BY so.[name], sc.colid
--带默认约束
SELECT ST.[name] AS "Table Name",
SC.[name] AS "Column Name",
SD.definition AS "Default Value",
SD.[name] AS "Constraint Name"
FROM sys.tables ST INNER
JOIN sys.syscolumns SC ON ST.[object_id] = SC.[id]
INNER JOIN sys.default_constraints SD ON ST.[object_id]
= SD.[parent_object_id] AND SC.colid = SD.parent_column_id
ORDER BY ST.[name], SC.colid
--带主键(key值的包括UNIQUE)
select * from INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGE
SELECT CONSTRAINT_NAME, TABLE_NAME,COLUMN_NAME=STUFF((SELECT ','+[COLUMN_NAME] FROM INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGE t WHERE CONSTRAINT_NAME=t1.CONSTRAINT_NAME FOR XML PATH('')), 1, 1, '')
FROM INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGE t1
GROUP BY CONSTRAINT_NAME, TABLE_NAME
--无默认约束--无主键(有索引)
select st.object_id,sc.column_id, st.name,sdc.name,sc.name ,ccu.COLUMN_NAME
from sys.all_columns sc
inner join sys.tables st on sc.object_id = st.object_id
left outer join sys.default_constraints sdc on sc.object_id = sdc.parent_object_id
and sc.column_id = sdc.parent_column_id
left outer join INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGE ccu on
sc.object_id = OBJECT_ID(ccu.TABLE_NAME) and
sc.name = ccu.COLUMN_NAME
where sc.user_type_id = 175
and sc.max_length >1 and sdc.name is null and ccu.COLUMN_NAME is null
order by sdc.name
--无默认约束--无主键(无索引)
select 'ALTER TABLE ', st.name, ' ALTER COLUMN ' + sc.name + ' varchar(',sc.max_length,') ' +
case sc.is_nullable when 0 then 'not null' else '' end
from sys.all_columns sc
inner join sys.tables st on sc.object_id = st.object_id
left outer join sys.default_constraints sdc on sc.object_id = sdc.parent_object_id
and sc.column_id = sdc.parent_column_id
left outer join INFORMATION_SCHEMA.CONSTRAINT_COLUMN_USAGE ccu on
sc.object_id = OBJECT_ID(ccu.TABLE_NAME) and
sc.name = ccu.COLUMN_NAME
left outer join (SELECT a.object_id,a.column_id, c.name,c.is_primary_key
FROM sys.columns a inner join sys.index_columns b
ON a.object_id = b.object_id AND a.column_id = b.column_id inner join sys.indexes c
ON b.object_id = c.object_id AND b.index_id = c.index_id) SI
on sc.object_id = SI.object_id and sc.column_id = SI.column_id
where sc.user_type_id = 175
and sc.max_length >1
and sdc.name is null
and ccu.COLUMN_NAME is null
and SI.name is null
order by sdc.name
--无条件的更新字段char
select st.object_id,sc.column_id, st.name,sdc.name,sc.name
from sys.all_columns sc
inner join sys.tables st on sc.object_id = st.object_id
left outer join sys.default_constraints sdc on sc.object_id = sdc.parent_object_id
and sc.column_id = sdc.parent_column_id
where sc.user_type_id = 175
and sc.max_length >1 and sdc.name is null
order by sdc.name
--更改char为varchar
select 'ALTER TABLE ',
sys.tables.name,
' ALTER COLUMN ',
sys.columns.name,
' varchar(',
sys.columns.max_length,
') ',
case is_nullable
when 0 then 'not null'
else ''
end
from sys.columns,sys.tables
where sys.columns.object_id = sys.tables.object_id and
user_type_id = 175 and
max_length <> 1
order by sys.tables.name
- 2013-04-20工作
- 工作整理2013-05
- 工作整理2013-06
- 2013/10/30工作
- 2013年终总结--工作篇
- 2013工作小结
- onenote 2013 停止工作
- 04工作感悟
- 工作日志2007.01.04
- 04-03 工作
- JS工作随笔04
- 2017.08.04工作日记
- 2017.08.04工作日记
- 工作日志2006.11.20
- 外企工作日志20
- 工作日记-2010.01.20
- 2011.7.20 工作要求
- 2013.6.20工作
- Oracle 9i/10g/11g编程艺术(2e)学习笔记【第5章】
- myeclipse10.6安装subeclipse插件方法
- 10420 - List of Conquests
- 堆排序 完整代码与详细注释 C++语言实现
- jquery、js基础
- 2013-04-20工作
- Python paramiko模块之SSH SFTP
- zoj Math Magic
- 几个好的 android 开发论坛
- debian中gcc安装
- 动态分发,站内短信等web2.0应用的百万级消息机制简单实现
- 简单素数筛选法介绍(数论初步) By ACReaper
- 软件测试中动态测试与静态测试的区别
- 常用的经典jquery代码