数据库的注释 –(两个横线)

主键表 外键表

主键,组合主键

SqlServer

使用附加

权限

主文件mdf

日志文件ldf

数据类型

char varchar nchar nvarchar

char(4)    固定   存的4个字母2个汉字 不足用空格

varchar(4) 不固定 存4个字母2个汉字 不会用空格补

nchar(4)   固定   存4个汉字4个字母 不足用空格

nvarchar(4) 不固定 存4个汉字4个字母 不会用空格补

带var的变长、不用空格补

带n的表示unicode字符集,所有字符用两个字节表示,存的字母和汉字一样多

通过sqlserver脚本来实现分离和附加数据库

数据库的插入

修改 update set..

删除 delete from class

drop table

truncate table class –

truncate 主要nb的地方是会把自动编号重置

如自增的主键

新增和修改

 

约束——保证数据的完整性

约束—保证数据完整性

·先用设计器创建约束、再用代码创建约束

·数据库约束是为了保证数据的完整性(正确性)而实现的一套机制,见文件Employee.sql

·非空约束 不让改的时候就工具选项,干掉勾

·主键约束

IDENDITY(标识规范)

IDENTITY(1,1)中,第一个1代表标识列的第一行的值,第二个1代表每次增长1,也就是说标识列的第二行值是2,以此类推。

·唯一约束

右键索引

·默认约束

·检查约束

·外键约束

数据库

前天内容复习

主键---每个表都应该有一个主键

业务主键 逻辑主键 组合主键

A表有主键,B表也有主键,B表中使用了A表中的主键作为一列 B表是外键表 A表是主键表

创建数据库 ,Create database on primary() log on()

创建表 ,Create table 表名()primary key,not null

数据类型 ,bit true false 1,0, 添加时间数据,用单引号 引起来

char(2),一个汉字,两个字母,

varchar(2),一个汉字,两个字母,

nchar(2),两个汉字,两个字母

nvarchar(2),两个汉字,两个字母

drop 与 truncate

truncate 删除后主键从默认值开始

6种约束,保证数据的完整性

非空约束,主键约束,唯一约束,默认约束,检查约束,外键约束

删除一列

alter table Employees drop column EmpAddress

添加一列

alter table Employees add EmpAddr varchar(100)

--手动修改一下EmpEmail的数据类型(varchar(200))

alter table Employees alter column EmpEmail varchar(200)

--为EmpId添加一个主键约束

alter table Employees add constraint PK_Employees_EmpId primary key

(EmpId)

--非空约束,为EmpName添加一个非空约束

alter table Employees alter  column EmpName varchar(50) not null

--为EmpName增加一个唯一约束

alter table Employees add constraint UQ_Employees_EmpName unique (EmpName)

--为性别添加一个默认约束,默认为'男'

alter table Employees add constraint DF_Employees_EmpGender default('男') for EmpGender

--为年龄增加一个检查约束,年龄必须在1-120岁之间

alter table Employees add constraint CK_Employees_EmpAge check(EmpAge>=1 and EmpAge<=120)

--增加外键约束

alter table Employees add constraint FK_Employees_Department_DepId

foreign key(DepId) references Department(DepId)

select GETDATE();

--查询所有的数据中的前10条数据

select top 10 * from student

--按照年龄从小到大排序

select * from student order by TSAge asc

--从大到小排序

select top 10 percent * from student order by TSAge desc

--去除重复

select distinct TSName from student;

聚合函数

·SQL聚合函数

MAX(最大值),

MIN(最小值)

min sum avg…..

select MAX(tsenglish) as 英语最高成绩,MIN(tsenglish) as 最低成绩,SUM(tsenglish)as 总和,AVG….

In Between和and

查询以张开头的所有名字

select * from student where TSName like '张%'

查询以张开头的名字,只有两个字

select * from tblstudent where TSName like ‘张__’

查询的是以张开头的名字,三个字

select * from Tblstudent where tsName like ‘张%’ and LEN(tSName) = 3

查询以张开头的名字中有字母的,三个字

select * from Tblstudent where tSname like ‘张[a-z]%’

select * from TblStudent where

查询里面就带百分号的

select * from TblStudent where TSname like ‘张[%]%’

名字里没有数字 并且就三个字

分组

having是在分组后进行筛选用的

转换

--第一种

select ‘当前时间’ +CAST(GETDATE() as varchar(20))

--第二种

select ‘当前时间’ +CONVERT(varchar(20),GETDATE(),109)

–这里按f1查看支持的type,这里type为109

union合并

默认有distinct功能

而union all 是没有的

select LOWER('HELLO') --转小写

select UPPER('word') --转大写

select LTRIM('       哈哈,不再相信爱情了')

select RTRIM('呵呵哒           ')

select RTRIM LTRIM('     a       ')

--没有直接trim

--获取几年

select DATEDIFF(YEAR,'2010',GETDATE())

--获取时间的某个部分

select DATEPART(year,getdate())

--添加数据的同时,获取该餐桌的id(主键)

--在数据库中@@开头 全局变量

insert into DeskInfo values(‘1好餐桌’,’pinyin’,0,’123’);select @@identity;

insert into Class(DeskName,DeskNamePinYin) output inserted.DeskId,inserted.cName vales()

04 SqlServer的更多相关文章

  1. 04.SQLServer性能优化之---读写分离&数据同步

    汇总篇:http://www.cnblogs.com/dunitian/p/4822808.html#tsql 过段时间再继续写文章吧,本来准备把SQLServer一个系列写完的,最近状态很差很不好, ...

  2. SQL从入门到基础 - 04 SQLServer基础2(数据删除、数据检索、数据汇总、数据排序、通配符过滤、空值处理、多值匹配)

    一.数据删除 1. 删除表中全部数据:Delete from T_Person. 2. Delete 只是删除数据,表还在,和Drop Table(数据和表全部删除)不同. 3. Delete 也可以 ...

  3. 03.SQLServer性能优化之---存储优化系列

    汇总篇:http://www.cnblogs.com/dunitian/p/4822808.html#tsql 概  述:http://www.cnblogs.com/dunitian/p/60413 ...

  4. SQLServer性能优化专题

    SQLServer性能优化专题 01.SQLServer性能优化之----强大的文件组----分盘存储(水平分库) http://www.cnblogs.com/dunitian/p/5276431. ...

  5. 平台之大势何人能挡? 带着你的Net飞奔吧!

    镇楼图: 跨平台系列: Linux基础 1.Linux基础学习 By dnt http://www.cnblogs.com/dunitian/p/4822807.html 环境配置 1.Hyper-v ...

  6. SQLServer 维护脚本分享(04)服务器角色和数据库角色相关操作

    /*------------------------------------------------------------------------------------ [服务器级别-服务器角色] ...

  7. SQLServer存储引擎——04.数据

    4. SQL SERVER存储引擎之数据篇 (4.1)文件 (0)主数据文件.mdf初始文件大小至少为3MB,次要数据文件.ndf初始大小,同日志文件一样至少为512KB: (1)SQL SERVER ...

  8. 【从0到1,搭建Spring Boot+RESTful API+Shiro+Mybatis+SQLServer权限系统】04、统一处理异常

    本节讨论如何使用Spring的异常处理机制,当我们程序出现错误时,以相同的一种格式,把错误信息返回给客户端 1.创建一些自定义异常 public class TipsException extends ...

  9. 破解SQLServer for Linux预览版的3.5GB内存限制 (RHEL篇)

    微软发布了SQLServer for Linux,但是安装竟然需要3.5GB内存,这让大部分云主机用户都没办法尝试这个新东西 这篇我将讲解如何破解这个内存限制 要看关键的可以直接跳到第6步,只需要替换 ...

随机推荐

  1. yii2-dingtalk 钉钉群机器人

    说明 群机器人是钉钉群的高级扩展功能.群机器人可以将第三方服务的信息聚合到群聊中,实现自动化的信息同步.目前,大部分机器人在添加后,还需要进行Webhook配置,才可正常使用(配置说明详见操作流程中的 ...

  2. 提高生产力:Web开发基础平台WebCommon的设计和实现

    Web开发中,存在着各种各样的重复性的工作.为了提高开发效率,不在当码农,我在思考和实践如何搭建一个Web开发的基础平台. Web开发基础平台的目标和功能 1.提供一套基础的开发环境,整合了常用的框架 ...

  3. eclipse迅速新建main函数

    创建类的时候勾选 或者在类的下面敲main,然后alt+/ 就可以了

  4. Windows下通过FTP自动上传和下载动态文件名

    某个项目中每天会生成一个以文件名+日期.rar文件,如bcpdata2012-08-31.rar文件,动态的部分为日期部分,在windows环境变量中用 %date:~0,10% 表示,这个文件生成后 ...

  5. annotation配置springMVC的方法了事务不起作用

    Spring MVC 和spring context 父子容器关系http://www.121ask.com/thread-5471-1.html 父上下文容器中保存数据源.服务层.DAO层.事务的B ...

  6. 绘图-CAD-改快捷键

    CAD的快捷键应该在左手边,左手不离开键盘,右手不离开鼠标,这样的操作才有效率. arc 圆弧命令原命令是ARC Q 圆(CIRCLE) C 原快捷键C被定义为COPY,Q的形状类似圆,只是多了一个尾 ...

  7. 由free命令想到的

    root@xdj-Z9PA-D8-Series:~# free -m total used free shared buffers cached Mem: 15977 1683 14293 0 132 ...

  8. AS常见的错误

    导入的项目使用的gradle版本和本地的要一致,不然会提示类似"Minimum supported Gradle version is 3.3. Current version is 2.1 ...

  9. HDU 5045 DP+状压

    2014 ACM/ICPC Asia Regional Shanghai Online 给出N个人做M道题的正确率,每道题仅仅能由一个人做出,而且当全部人都做出来且仅做出一道题时,做过题的人才干够继续 ...

  10. Linux 网卡驱动学习(六)(应用层、tcp 层、ip 层、设备层和驱动层作用解析)

    本文将介绍网络连接建立的过程.收发包流程,以及当中应用层.tcp层.ip层.设备层和驱动层各层发挥的作用. 1.应用层 对于使用socket进行网络连接的server端程序.我们会先调用socket函 ...