sql语句 得到 sql server 表中列的类型和说明
通过Sql语句获得 列的类型和说明:
得到的表头:表名|列名|类型|说明
1:针对sql server 2000,在sql2000中,使用:sysobjects,syscolumns和sysproperties表
SELECT o.name as table_name,c.name AS col_name,type_name(c.xtype) AS type_name,isnull(p.value,'') AS col_Property from sysobjects AS o JOIN syscolumns AS c ON o.id = c.id LEFT JOIN sysproperties p ON c.id = p.id and c.colid=p.smallid WHERE o.name = 'TableName' ORDER BY c.colid
2:针对sql server 2005,在sql2005中,使用:sys.objects,sys.columns和sys.extended_properties表
SELECT o.name as table_name,c.name AS col_name,TYPE_NAME(c.user_type_id) AS type_name,isnull(ep.value,'') AS col_Property from sys.objects AS o JOIN sys.columns AS c ON o.object_id = c.object_id
LEFT JOIN sys.extended_properties ep ON c.object_id = ep.major_id and c.column_id=ep.minor_id
WHERE o.name = 'TableName' ORDER BY c.column_id
相关文档:
和 UNION 指令类似, INTERSECT 也是对两个 SQL 语句所产生的结果做处理的。不同的地方是, UNION 基本上是一个 OR (如果这个值存在于第一句或是第二句,它就会被选出),而 INTERSECT 则比较像 AND ( 这个值要存在于第一句和第二句才会被选出)。 UNION 是联集,而 INTERSECT 是交集。
INTERSECT 的语法如下:
[SQL语句 ......
有的时候,我们有需要将由不同栏位获得的资料串连在一起。每一种资料库都有提供方法来达到这个目的:
MySQL: CONCAT()
Oracle: CONCAT(), ||
SQL Server: +
CONCAT() 的语法如下:
CONCAT(字串1, 字串2, 字串3, ...): 将字串1、字串2、字串3,等字串连在一起。请注意,Oracle的CONCAT()只允许两个参数;换言之,� ......
有时候我们会决定我们需要从数据库中清除一个表格。事实上,如果我们不能这样做的话,那将会是一个很大的问题,因为数据库管理师 (Database Administrator -- DBA) 势必无法对数据库做有效率的管理。还好,SQL 有提供一个 DROP TABLE的语法来让我们清除表格。 DROP TABLE 的语法是:
DROP TABLE "表格名"
我们如果要清� ......
在某些情况下,我们会需要直接由数据库中去除一些资料。这可以藉由 DELETE from 指令来达成。它的语法是:
DELETE from "表格名"
WHERE {条件}
以下我们用个实例说明。假设我们有以下这个表格:
Store_Information 表格
store_name
Sales
Date
Los Angeles
$1500
Jan-05-1999
San Diego
$250
Jan-0 ......
在这一页中,我们列出所有在这个网站有列出 SQL 指令的语法。若要更详尽的说明,请点选指令名称。
这一页的目的是提供一个简洁的 SQL 语法做为读者参考之用。我们建议您现在就按 Control-D 将本页加入您的『我的最爱』。
Select
SELECT "栏位" from "表格名"
Distinct
SELECT DISTINCT "栏位"
from "表格名"
......