Sql Server 学习备忘录

MsSql-

协议:
Shared Memory :效率最高,在内存中操作,是能用于本机,用.或(local)就等登录
Named Pipes :Winodows与Windows交流的协议,机器名交流,一般用不到
Tcp-Ip :通过IP地址访问服务器

数据类型更多详细信息请查阅http://www.cnblogs.com/zhangwei595806165/archive/2012/02/23/2364746.html

字段的数据类型:
Image 可用来存储图像,以二进制数据存储,但图片放进数据库效率很低。

以文本方式存储:
Char(1-8000) 定长字符数据,空格补齐,低于五个字符最好使用char
Varchar(1-8000)定长字符,字符少会空格补齐,性能高
Nchar(1-4000) 固定长度,两个字节存储一个字符,空间换时间
Nvarchar(1-8000)可变长字符数据,字符不会补齐,两个字节存储一个字符但搜索时效率会低
varchar(MAX)/nvarchar(MAX):存储大数据的文本,2005之前用text,text不能用模糊查询

精确数值存储:
bit :0/1/null
int :四字节存储一个数据
bigint:比int范围更大更广,八个字节存储一个数据。

日期类型

datetime: 1753.1.1~9999.12.31,表示一个完整的日期类型
datatime2 :最早甚至可以追溯到中华文明五千年。。。。大部分用datetime就足够
time:小时:分钟:秒 主要存储时间

t-sql建表:

create database 数据库名
on[(
name=‘‘,
size=.;
filename=‘绝对路径‘
)]

create table 表名(
字段名 类型 是否为可空(默认为空) 约束

---------------
约束:
主键约束:不能为空 primary key
外键约束:foreign key 外键的列与列最好要一样。 referecnces 关联的表(字段)
唯一约束:unique
自增:标识种子和标识增量中设置。
检查约束:check,检查可以在c#程序中检查,在数据库中设置检查会消耗效率。
默认约束:default(‘默认值‘)
非空约束:not null ,默认为null
-----------------------

sql的执行顺序--先找到表,分组,查询数据。

------------
CRUD:
增:insert into 表名(列名) values() // values中需要对应列名的顺序
删:delete from 表名 ...
改:update 表名 set 列名=值 ...
查:select 字段 from 表名 ...

聚合函数:
Sum :取和
Avg :求平均值
Count:计算次数
Min/Max:求最大或最小

排序: 前面top关键字,order by 列名 desc(降序)默认升序 asc
去重复: distinct select distinct 字段 from... 判断字段是否重复,对后面所有的列进行去重复
分组: group by 列名 select后面只能跟 group by 后面的字段或聚合函数

时间: 2024-08-10 02:09:57

Sql Server 学习备忘录的相关文章

SQL server学习

慕课网sql server学习 数据库第一印象:desktop--web server--database server** 几大数据库:sql server.oracle database.DB2.MySql.MongoDB.....(SQL结构性查询语言) 安装软件:SQL Server Management Studio 附加.分离(attach.detach)数据库文件: 数据库图表关系图: 关系型数据库: 二维表.主键.外键 T-SQL简介: T-SQL query--从数据库中查询索

【SQL Server 学习系列】-- sql 随机生成中文名字

原文:[SQL Server 学习系列]-- sql 随机生成中文名字 1 DECLARE @fName TABLE(Id INT IDENTITY(1,1) PRIMARY KEY, NAME NVARCHAR(20)) -- 姓氏 2 DECLARE @lName TABLE(Id INT IDENTITY(1,1) PRIMARY KEY, NAME NVARCHAR(20)) -- 名字 3 4 INSERT @fName VALUES 5 ('赵'),('钱'),('孙'),('李')

SQL Server学习记录Day1

最近在学习SQL Server 数据库,用的版本是2008 R2的版本,如下图所示,本人学习时间不长,写这篇文章一是为了锻炼自己加深印象,二也可以与和诸多朋友进行交流以及得到大家的指教. 安装教程网上有很多,可以自行去搜索,但是安装时有一些小细节,在安装到实例配置的时候,如果没有安装过其它版本的SQL SERVER,请选择默认实例,如果有安装过,则手工指定实例.如果一台电脑安装了多个实例的SQL SERVER,每个实例的端口是不一样的,当在软件中设置服务器连接地址时需要注意,例如:192.168

【SQL Server学习笔记】事务、锁定、阻塞、死锁

http://blog.csdn.net/sqlserverdiscovery/article/details/7712068 Column name Data type Description       blocked smallint ID of the session that is blocking the request. If this column is NULL, the request is not blocked, or the session information of

SQL server 学习笔记1

1.查询安装的排序规则选项喝当前的排序规则服务器属性 select * from fn_helpcollations(); 2.查看当前服务器的排序规则 select serverproperty('Collation') as ServerCollation; 3.修改数据库DB1的排序规则,使他区分大小写 create database DB1 go alter database DB1 collate SQL_Latin1_General_CP1_CS_AS; go select data

SQL Server学习--数据库用户管理

使用SQL语句创建登录名及为用户赋予权限 创建登录名  1 CREATE LOGIN <登录名> WITH PASSWORD=<'密码'> 创建数据库用户  1 CREATE USER 数据库用户 FOR LOGIN 登录名 为数据库用户赋予权限  1 GRANT 操作权限 ON 表名 TO 用户名 将 UPDATE权限进行回收 1 USE E_Market 2 GO 3 REVOKE UPDATE ON UserInfo TO MasterDBUser 4 GO

Sql Server 学习链接

避免SQL全表查询:http://www.dedecms.com/knowledge/data-base/sql-server/2012/0821/11698.html?jdfwkey=n3nuq

SQL Server学习--数据库管理

mdf 主数据文件,一个数据库中只能有一个主数据文件 ndf 次数据文件,一个数据库中可以有多个次数据文件ldf 数据库日志文件 使用SQL语句创建数据库 ---------------------------------------------------------------------------------------------------------------------------- 创建一个数据文件和一个日志文件的数据库 1 USE master --指向当前使用的数据库 2

SQL server 学习笔记2

select *from lol --top 关键字 select top 3 *from lol--查询前三行 select top 3 *from lol where age>22 --加入条件 select top 3 name,wuqi from lol where age>22 -- --关键字 distinct 查询不同项 去重 select distinct name from lol --查询不同名字的行 --order by 升序 select *from lol order