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数据库语句学习的主要内容,如果未能解决你的问题,请参考以下文章

Sql-Server用insert插入多行数据-语法和例子

sql-server学习:索引

SQL-SERVER 常用数据类型

日文符号“?”插入sql-server2005乱码问题

使用SQL-Server创建一个银行数据管理系统Ⅰ

mybatis学习日志二