sql-server数据库语句学习
Posted Dëm0n
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql-server数据库语句学习相关的知识,希望对你有一定的参考价值。
查看所有数据库名
select name from master..Sysdatabases order by name;
查看当前数据所有表
select name from sysobjects where xtype = \'U\' ORDER BY name
查询所有表的数据结构(最牛逼的)
SELECT (case when a.colorder=1 then d.name else null end) 表名, a.colorder 字段序号,a.name 字段名, (case when COLUMNPROPERTY( a.id,a.name,\'IsIdentity\')=1 then \'√\'else \'\' end) 标识, (case when (SELECT count(*) FROM sysobjects WHERE (name in (SELECT name FROM sysindexes WHERE (id = a.id) AND (indid in (SELECT indid FROM sysindexkeys WHERE (id = a.id) AND (colid in (SELECT colid FROM syscolumns WHERE (id = a.id) AND (name = a.name))))))) AND (xtype = \'PK\'))>0 then \'√\' else \'\' end) 主键,b.name 类型,a.length 占用字节数, COLUMNPROPERTY(a.id,a.name,\'PRECISION\') as 长度, isnull(COLUMNPROPERTY(a.id,a.name,\'Scale\'),0) as 小数位数,(case when a.isnullable=1 then \'√\'else \'\' end) 允许空, isnull(e.text,\'\') 默认值,isnull(g.[value], \' \') AS [说明] FROM syscolumns a left join systypes b on a.xtype=b.xusertype inner join sysobjects d on a.id=d.id and d.xtype=\'U\' and d.name<>\'dtproperties\' left join syscomments e on a.cdefault=e.id left join sys.extended_properties g on a.id=g.major_id AND a.colid=g.minor_id left join sys.extended_properties f on d.id=f.class and f.minor_id=0 where b.name is not null --WHERE d.name=\'要查询的表\' --如果只查询指定表,加上此条件 order by a.id,a.colorder
其他操作符合sql标准:
--库操作
create database test;
use test;
--表操作
drop table Users; create table users(id int,username char(100),password char(100),remarks char(100));
--数据操作 insert into Users values(1,\'admin\',\'admin123\',\'This is administrator for system\');
update Users set username = \'king\',password = \'123456\' where username = \'admin\';
delete from Users where username = \'king\'; select * from Users;
注意:字符串需要使用单引号包围,如果输入的名称含有空格,那么可以使用双引号来标明。
其他操作:
以第一个字段进行排序
select * from Users order by 1;
查询所有数据username字段的长度
select LEN(username) from Users;
创建一个自动增长ID的表
create table users(id int identity(1,1) primary key, username varchar(200),password varchar(200));
查询所有的库
SELECT Name FROM Master..SysDatabases ORDER BY Name
查询所有用户创建的表
select name from sysobjects where xtype= \'u\'
查询某库中所有用户创建的表
SELECT Name FROM SCHEMA_NAME..SysObjects Where XType=\'U\' ORDER BY Name
查询某表当中所有的字段
SELECT Name FROM SysColumns WHERE id=Object_Id(\'TABLE_NAME\')
SQLserver2000开启远程连接及故障排除
https://www.cnblogs.com/furenjun/archive/2007/12/27/1017116.html
以上是关于sql-server数据库语句学习的主要内容,如果未能解决你的问题,请参考以下文章