SQL 数据库知识点回顾
SQL2008
一、安装注意事项:
1.修改用户权限(在一个安装页面中有七八个)(改成net.)
2.添加当前系统用户为账户
二、主键,约束,索引
三、增删改查;
insert、delete、update
select__*或者列名_____from 表where_______排序分组
逐条核对,符合条件的显示出来
语句执行过程:
先找到表,筛选行结束,排序,筛选列
首先执行“from表”,最后执行select_______.
聚合函数:最终查询的结果集,进行聚合操作。位于select和from中间,用了聚合函数后,不能再写其他列。聚合函数返回一行一列。
Count(*)、Sum(列名)、Avg、Max、Min
select sum(degree)(这里不能再加其他列Name等) from student where birthday=1990
数学函数:位于select和from中间或者where之后。
Round,Ceiling,Floor,ABS,Sqrt
select Ceiling(degree)from student where degree>95
日期时间函数:位于select和from中间或者where之后
DateAdd
字符串函数:substr,LTrim,RTrim
类型转换:Cast,Convert
Cast(列 as 类型)
Convert(类,列)
查询
子查询(查询的嵌套)通过某个查询,查询出一组列数据来作为当前查询的筛选条件
两个表Teacher Student
查某个老师教的所有学生
select * from student where Tno=001
查某个班所有老师教的所有学生。
select * from student where Tno in(select Tno from Teacher where Cno=001)
连接查询(多个表同时查询):横向查询(A表和B表)用where或Join连接表,用where(笛卡儿积)占用内存高
select * from Student Join Teacher on S.Tno=T.Tno
(没有同名列才能用*)
纵向连接:
select Name,Sex from Student
union
select Name,Sex from Teacher
注意两个表的列数据类型一致,顺序是随机的,查询结果的列名是Student的列名。
四、存储过程
Create Proc_______
参数
AS
过程
go
Exec 参数
declare:定义变量
if else Begin End
for
alter delete
五、视图
虚拟的表,更便捷、更直观显示某些需求数据(是在精巧、便捷设计数据库的基础上)
creat view 视图
As
查询语句,表连接
go
六、触发器
Trigger,某个操作一执行,引发触发器里的内容,一个特殊的存储过程(不通过Exec执行,通过对数据库的操作(增删改)引发执行)
分为两种:
for After
Instead of替换掉操作内容,执行触发器内容。
应用:
级联删除:Student中的teacher引用了Teacher表中的teacher。
自动添加:员工表新加一个员工,自动往用户表添加一个用户名和密码
七、事务:
Begin Tran
...
commit(所有步骤没有问题,统一提交)
RollBack(回滚:任何步骤出现问题,恢复起始状态,当作什么都没发生)
范例:银行转账
SQL:存储过程、事务、触发器不常用(易出问题、数据迁移不方便)
SQL 数据库知识点回顾的更多相关文章
- Java进阶(二十六)公司项目开发知识点回顾
公司项目开发知识点回顾 前言 "拿来主义"在某些时候并不是最佳选择,尤其是当自己遇到问题的时候,毫无头绪. 在一次实验过程中,需要实现数据库的CRUD操作.由于之前项目开发过程中, ...
- django知识点回顾与补充
一.django知识点回顾 1.Cookie操作 - 客户端本地存储的键值对 2.Session操作 - 3.URL路由 - /index -> view.函数 4.MTV 5.View中返回方 ...
- Spring学习笔记:Spring整合Mybatis(mybatis-spring.jar)(一:知识点回顾)
一.知识点回顾 1.Mybatis环境搭建(DAO层的实现)(使用maven项目管理工具) 需要引入的依赖包: <!-- 单元测试junit --> <dependency> ...
- 面试前的准备---C#知识点回顾----03
经过一天的奔波,喜忧参半,不细表 再回看下标题,C#知识点回顾 再看下内容,数据库3NF 原谅我这个标题党 今天继续回忆 1.HTTP中Post和Get区别 这忒简单了吧,大家是不是感觉到兴奋了,长舒 ...
- SQL数据库知识二(Day 25)
又到了总结知识的时候了,今天主要把SQL数据库给简单的学完了,明天开始就要开始学ADO.NET的知识了.好了,话不多说,还是看一下今天都学了哪些内容. 1 字符串类型的知识点 --类型的使用 --截 ...
- SQL数据库的应用一(Day 24)
哈哈,又到了新的一周.我们也开始学习新的知识了,从今天开始学习SQL数据库的一些知识.今天主要讲了一些数据库.表的创建管理,和一些约束的定义使用.(这里使用的是SQL语句)下面我就具体总结一下. 总结 ...
- $Django Rest Framework-认证组件,权限组件 知识点回顾choices,on_delete
一 小知识点回顾 #orm class UserInfo (models.Model): id = models.AutoField (primary_key=True) name = models. ...
- Android学习笔记——保存数据到SQL数据库中(Saving Data in SQL Databases)
知识点: 1.使用SQL Helper创建数据库 2.数据的增删查改(PRDU:Put.Read.Delete.Update) 背景知识: 上篇文章学习了保存文件,今天学习的是保存数据到SQL数据库中 ...
- 讲解SQL数据库语句
前言 大家好,我是 Vic,今天给大家带来讲解SQL数据库语句的概述,希望你们喜欢 数据库语句 create database teach; use teach; create table `teac ...
随机推荐
- JQ each
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- ASP.NET MVC请求特殊静态文件返回404 Not Found
今天在请求静态的json档案以及woff2档案,会返回404错误,需要在Web.Config里修改: <system.webServer> <modules> <remo ...
- AFNetworking自我总结
AFNetworking 简介 目前国内开发网络应用使用最多的第三方框架 是专为 Mac OS & iOS 设计的一套网络框架 对 NSURLConnection 和 NSURLSession ...
- SQL子句执行顺序和Join的一点总结
SQL子句执行顺序和Join的一点总结 FROM ON JOIN WHERE GROUP BY WITH CUBE or WITH ROLLUP HAVING SELECT DISTINCT ORDE ...
- JSP基础之 C标签中的 varStatues属性
变量状态参数,该属性有5个常用值count 表示当前遍历集合的元素个数index 表示当前遍历到集合的第几个元素current 表示当前的集合元素first 表示集合的第一个元素last 表示集合的最 ...
- HDU 5724 - Chess
题意: 一个n行20列的棋盘. 每一行有若干个棋子. 两人轮流操作, 每人每次可以将一个棋子向右移动一个位置, 如果它右边有一个棋子, 就跳过这个棋子, 如果有若干个棋子, 就将这若干个 ...
- mysql 互为主从复制常见问题
报错:1)change master导致的: Last_IO_Error: error connecting to master - retry-time: 60 retr ...
- spring注解注入:<context:component-scan>使用说明
spring从2.5版本开始支持注解注入,注解注入可以省去很多的xml配置工作.由于注解是写入java代码中的,所以注解注入会失去一定的灵活性,我们要根据需要来选择是否启用注解注入. 在XML中配置了 ...
- YUM更换源--yum找不到安装包(转)
公司提供的CentOS VM中,/etc/yum.repos.d 下 只有一个build.repo,其中提供的yum 源只有公司内部的几个源,很多包在这些源中都找不到.于是要添加别的源,下面的帖子中介 ...
- I/O事件
I/O事件 最近在研究tornado和gevent,里面涉及了非阻塞I/O.在了解非阻塞I/O之前,需要先了解I/O事件 我们知道,内核有缓冲区.假设有两个进程A,B,进程B想读进程A写入的东西(即进 ...