sql server2005中测试通过的非常有用的sql语句:
--1:获取当前数据库中的所有用户表
select name from sysobjects where xtype='u' and status>=0
oracle中对应的为:select username,machine from v$session;
--当status为小于0时,什么结果也没有
--查看当前数据库中是否包含某个表
select * from sysobjects where xtype='u' and status>=0 and name='student'
--2:获取某一个表的所有字段
select name from syscolumns where id=object_id('student')
oracle中对应的为:desc 表名
--3:查看与某一个表相关的视图、存储过程、函数
select a.* from sysobjects a, syscomments b where a.id = b.id and b.text like '%student%'
--4:查看当前数据库中所有存储过程
select name as 存储过程名称from sysobjects where xtype='P'
--5:查询用户创建的所有数据库
select * from master..sysdatabases D where sid not in(select sid from master..syslogins where name='sa')--这里不止列出了所创建的数据库,还列出了它们的具体信息
select dbid, name AS DB_NAME from master..sysdatabases where sid <> 0x01--这个只是列出了所创建数据库的名字
--6:查询某一个表的字段和数据类型
select column_name,data_type from information_schema.columns where table_name = 'student'
--7:获取数据库文件路径
select ltrim(rtrim(filename)) from stored..sysfiles where charindex('MDF',filename)>0--获取到mdf文件的路径
select ltrim(rtrim(filename)) from stored..sysfiles where charindex('LDF',filename)>0--获取到ldf文件的路径
本文转自sucre03 51CTO博客,原文链接:http://blog.51cto.com/sucre/416807,如需转载请自行联系原作者