04 SqlServer
数据库的注释 –(两个横线)
主键表 外键表
主键,组合主键
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的更多相关文章
- 04.SQLServer性能优化之---读写分离&数据同步
汇总篇:http://www.cnblogs.com/dunitian/p/4822808.html#tsql 过段时间再继续写文章吧,本来准备把SQLServer一个系列写完的,最近状态很差很不好, ...
- SQL从入门到基础 - 04 SQLServer基础2(数据删除、数据检索、数据汇总、数据排序、通配符过滤、空值处理、多值匹配)
一.数据删除 1. 删除表中全部数据:Delete from T_Person. 2. Delete 只是删除数据,表还在,和Drop Table(数据和表全部删除)不同. 3. Delete 也可以 ...
- 03.SQLServer性能优化之---存储优化系列
汇总篇:http://www.cnblogs.com/dunitian/p/4822808.html#tsql 概 述:http://www.cnblogs.com/dunitian/p/60413 ...
- SQLServer性能优化专题
SQLServer性能优化专题 01.SQLServer性能优化之----强大的文件组----分盘存储(水平分库) http://www.cnblogs.com/dunitian/p/5276431. ...
- 平台之大势何人能挡? 带着你的Net飞奔吧!
镇楼图: 跨平台系列: Linux基础 1.Linux基础学习 By dnt http://www.cnblogs.com/dunitian/p/4822807.html 环境配置 1.Hyper-v ...
- SQLServer 维护脚本分享(04)服务器角色和数据库角色相关操作
/*------------------------------------------------------------------------------------ [服务器级别-服务器角色] ...
- SQLServer存储引擎——04.数据
4. SQL SERVER存储引擎之数据篇 (4.1)文件 (0)主数据文件.mdf初始文件大小至少为3MB,次要数据文件.ndf初始大小,同日志文件一样至少为512KB: (1)SQL SERVER ...
- 【从0到1,搭建Spring Boot+RESTful API+Shiro+Mybatis+SQLServer权限系统】04、统一处理异常
本节讨论如何使用Spring的异常处理机制,当我们程序出现错误时,以相同的一种格式,把错误信息返回给客户端 1.创建一些自定义异常 public class TipsException extends ...
- 破解SQLServer for Linux预览版的3.5GB内存限制 (RHEL篇)
微软发布了SQLServer for Linux,但是安装竟然需要3.5GB内存,这让大部分云主机用户都没办法尝试这个新东西 这篇我将讲解如何破解这个内存限制 要看关键的可以直接跳到第6步,只需要替换 ...
随机推荐
- 序列模型(4)----门控循环单元(GRU)
一.GRU 其中, rt表示重置门,zt表示更新门. 重置门决定是否将之前的状态忘记.(作用相当于合并了 LSTM 中的遗忘门和传入门) 当rt趋于0的时候,前一个时刻的状态信息ht−1会被忘掉,隐藏 ...
- Project Euler 21 Distinct primes factors( 整数因子和 )
题意: 记d(n)为n的所有真因数(小于n且整除n的正整数)之和. 如果d(a) = b且d(b) = a,且a ≠ b,那么a和b构成一个亲和数对,a和b被称为亲和数. 例如,220的真因数包括1. ...
- OOA,OOD,OOP区别
定义: OOA(Object-Oriented Analysis,面向对象分析方法) OOD(Object-Oriented Design,面向对象设计) OOP(Object Oriented Pr ...
- IntelliJ IDEA 2017.1.6 x64 的破解
方式一 现在用这个 http://idea.imsxm.com/好使 步骤如下,点击help按钮,选择Register 点击license server 修改下面的服务器激活地址 方式二 由于Je ...
- ubuntu系统自动配置开机启动脚本
以前一直搞的centos配置开机启动脚本,但是相同方法用在ubuntu系统上就不管用了,非常伤脑筋. 非常感谢 https://www.linuxidc.com/Linux/2017-09/1471 ...
- java陷阱之spring事物未提交和回滚导致不可预知问题
案发现场 //防止全局配置了 所以这里定义sprnig 不托管事物 @Transactional(propagation = Propagation.NOT_SUPPORTED) public boo ...
- Loaded APR based Apache Tomcat Native library 1.1.24 using APR version 1.4.6.
Loaded APR based Apache Tomcat Native library 1.1.24 using APR version 1.4.6. 我复制的几个地方: MySql C:\WIN ...
- BA-协议-BACnet 协议优势简析
BACnet - Building Automation and Control Network 的简称,为楼宇自控网络制定 的网络和通讯协议 .由美国暖通空调工程师协会主导制定的开放的楼宇自控通讯标 ...
- HDU 4228
很明显可以转化为反素数的题目.由于有n种不同的方式,所以,数的约数可以为2*n或者2*n-1 #include <iostream> #include <cstdio> #in ...
- HDU 2138
这题用MILLER测试应该是不可避免的. #include <iostream> #include <cstdio> #include <stdlib.h> #in ...