sql server 中的一些实用的sql语句
来源:互联网 发布:怎么看淘宝店铺的类目 编辑:程序博客网 时间:2024/05/21 05:56
sql server 中的一些重要sql语句
简介
http://www.zhongsisi.com/sql-server-in-some-useful-sql-statement/
在这篇文章中,我列举一些sql语句来介绍数据库,数据表,视图等等。当我们在使用查询查询操作时这些sql语句都是非常有用的。虽然在sql server对象浏览器中我们也可以获得这些语句,但是如果我们写这些语句时我们可以将它自定义。这就意味着我们可以给予自己的需求来过滤结果。
sql语句列表
如何列举sql server当前连接的可用数据库
Method 1 : SP_DATABASES
Method 2 :
SELECT
name
FROM
SYS.DATABASES
Method 3 :
SELECT
name
FROM
SYS.MASTER_FILES
Method 4 :
SELECT
*
FROM
SYS.MASTER_FILES
-- Type=0 for .mdf and type=1 for .ldf
SP_DATABASES是一个可以列举数据库及其大小的存储过程
sys.databases语句中可以列举数据库名称,创建日期,修改日期,已经数据库id和其他一些信息。
SYS.MASTER_FILES语句可以查询数据的详细情况,比如数据库id,大小,物理存储路径以及列举数据库mdf和ldf.
如何列举数据库中的数据表
以下的sql语句都可以列表sql server数据库中的用户表.
Method 1 :
SELECT
name
FROM
SYS.OBJECTS
WHERE
type=
'U'
Method 2 :
SELECT
NAME
FROM
SYSOBJECTS
WHERE
xtype=
'U'
Method 3 :
SELECT
name
FROM
SYS.TABLES
Method 4 :
SELECT
name
FROM
SYS.ALL_OBJECTS
WHERE
type=
'U'
Method 5 :
SELECT
table_name
FROM
INFORMATION_SCHEMA.TABLES
WHERE
TABLE_TYPE=
'BASE TABLE'
Method 6 : SP_TABLES
如何列举数据库中的存储过程
Method 1 :
SELECT
name
FROM
SYS.OBJECTS
WHERE
type=
'P'
Method 2 :
SELECT
name
FROM
SYS.PROCEDURES
Method 3 :
SELECT
name
FROM
SYS.ALL_OBJECTS
WHERE
type=
'P'
Method 4 :
SELECT
NAME
FROM
SYSOBJECTS
WHERE
xtype=
'P'
Method 5 :
SELECT
Routine_name
FROM
INFORMATION_SCHEMA.ROUTINES
WHERE
ROUTINE_TYPE=
'PROCEDURE'
SYS.OBJECTS数据表包含了全部的存储过程,数据表,触发器,视图等的信息,这里使用type=’p'来查询存储过程.
Information_schema.routines在sql server 7.0是一个数据视图,在其后的版本中已经变成存储过程专有的表.
如何列举数据库中的视图
Method 1 :
SELECT
name
FROM
SYS.OBJECTS
WHERE
type=
'V'
Method 2 :
SELECT
name
FROM
SYS.ALL_OBJECTS
WHERE
type=
'V'
Method 3 :
SELECT
TABLE_NAME
FROM
INFORMATION_SCHEMA.VIEWS
Method 4 :
SELECT
name
FROM
SYS.VIEWS
如何列举数据库中的函数
Method 1 :
SELECT
name
FROM
SYS.OBJECTS
WHERE
type=
'IF'
-- inline function
Method 2 :
SELECT
name
FROM
SYS.OBJECTS
WHERE
type=
'TF'
-- table valued function
Method 3 :
SELECT
name
FROM
SYS.OBJECTS
WHERE
type=
'FN'
-- scalar function
Method 4 :
SELECT
name
FROM
SYS.ALL_OBJECTS
WHERE
type=
'IF'
-- inline function
Method 5 :
SELECT
name
FROM
SYS.ALL_OBJECTS
WHERE
type=
'TF'
-- table valued function
Method 6 :
SELECT
name
FROM
SYS.ALL_OBJECTS
WHERE
type=
'FN'
-- scalar function
Method 7 :
SELECT
Routine_name
FROM
INFORMATION_SCHEMA.ROUTINES
WHERE
ROUTINE_TYPE=
'FUNCTION'
如何列举数据库中的触发器
Method 1 : SP_HELPTRIGGER Products
Method 2 :
SELECT
*
FROM
SYS.TRIGGERS
WHERE
parent_id = object_id(
'products'
)
下面我以一个products表为例列举一些对表的操作.
如何获取数据表中的列
Method 1 : SP_HELP Products
Method 2 : SP_COLUMNS Products
Method 3 :
SELECT
*
FROM
SYS.COLUMNS
WHERE
object_id = object_id(
'Products'
)
Method 4 :
SELECT
COLUMN_NAME,Ordinal_position,Data_Type,character_maximum_length
FROM
INFORMATION_SCHEMA.COLUMNS
WHERE
TABLE_NAME=
'Products'
如何根据数据表的列查找数据表的名称
Method 1 :
SELECT
O.
name
FROM
SYS.OBJECTS O
INNER
JOIN
SYS.COLUMNS C
ON
C.Object_ID = O.Object_ID
WHERE
C.
name
LIKE
'%ShipName%'
Method 2 :
SELECT
OBJECT_NAME(object_id)
AS
[
Table
Name
]
FROM
SYS.COLUMNS
WHERE
name
LIKE
'%ShipName%'
Method 3 :
SELECT
TABLE_NAME
FROM
INFORMATION_SCHEMA.COLUMNS
WHERE
COLUMN_NAME
LIKE
'%ShipName%'
如何获得数据表的总列数
Method 1 :
SELECT
COUNT
(@@ROWCOUNT)
FROM
Products
Method 2 :
SELECT
COUNT
(ProductID)
FROM
Products
Method 3 :
SELECT
OBJECT_NAME(id)
AS
[
Table
Name
],rowcnt
FROM
SYSINDEXES
WHERE
OBJECTPROPERTY(id,
'isUserTable'
)=1
AND
indid < 2
ORDER
BY
rowcnt
DESC
Method 4 :
SELECT
rowcnt
FROM
sysindexes
WHERE
id = OBJECT_ID(
'Products'
)
AND
indid < 2
Method 5 :
SELECT
OBJECT_NAME(OBJECT_ID) TableName,row_count
FROM
sys.dm_db_partition_stats
WHERE
object_id = object_id(
'Products'
)
AND
index_id < 2
如何获得数据表的约束
Method 1 :
SELECT
*
FROM
SYS.OBJECTS
WHERE
type=
'C'
Method 2 :
SELECT
*
FROM
sys.check_constraints
如何获得数据表的索引
Method 1 : sp_helpindex Products
Method 2 :
SELECT
*
FROM
sys.indexes
WHERE
object_id = object_id(
'products'
)
如何获得数据视图的模式定义
Method 1 :
SELECT
OBJECT_NAME(id)
AS
[
View
Name
],text
FROM
SYSCOMMENTS
WHERE
id
IN
(
SELECT
object_id
FROM
SYS.VIEWS)
Method 2 :
SELECT
*
FROM
sys.all_sql_modules
WHERE
object_id
IN
(
SELECT
object_id
FROM
SYS.VIEWS)
Method 3 : SP_HELPTEXT ViewName
如何获得存储过程中的数据表
Method 1 :
SELECT
OBJECT_NAME(id)
FROM
SYSCOMMENTS S
INNER
JOIN
SYS.OBJECTS O
ON
O.Object_Id = S.id
WHERE
S.text
LIKE
'%Products%'
AND
O.type=
'P'
总结
以上列举了一下sql server用实用的一些sql语句,希望对你在使用查询窗口操作时有用。
- sql server 中的一些实用的sql语句
- sql server 中的一些实用的sql语句
- sql server 中的一些实用的sql语句
- sql server 中的一些实用的sql语句
- ORACLE和SQL SERVER的SQL语句中的一些区别
- Sql Server的一些语句
- 比较实用的Sql Server 语句
- sql server的一些常用 sql 语句
- sql server中的一些基本查询语句
- SQL SERVER 日常实用语句
- 【SQL SERVER 数据库实用SQL语句】
- 【SQL SERVER 数据库实用SQL语句】
- SQL SERVER 数据库实用SQL语句
- 【SQL SERVER 数据库实用SQL语句】
- 【SQL SERVER 数据库实用SQL语句】
- SQL SERVER 数据库实用SQL语句
- SQL SERVER 数据库实用SQL语句
- SQL SERVER 数据库实用SQL语句
- B2C零售外贸是则样赚钱的?
- 视频知识普及:码率,分辨率,帧率,清晰度
- Android 创建与解析XML(五)—— Dom4j方式
- 收集整理的oracle常用命令大全,解决oracle常见问题
- SmartChineseAnalyzer的对中文开源社区是一大贡献
- sql server 中的一些实用的sql语句
- geohash
- OGRE粒子调烟花效果
- ORA-07445: 出现异常错误: 核心转储(oracle bug)
- Android 创建与解析XML(六)—— 比较与使用
- Maven change to java progect
- 如何查看弹出窗口的源代码
- SIFT特征点匹配中KD-tree与Ransac算法的使用
- 八种常用的排序算法