1、核心数据库概念
关系型数据库:关系型数据库是表的集合 。表之间存在数据关系,是数据建模的主要工作。
DBMS:数据库管理系统,数据库管理的程序集合,可以对数据库和数据库的内容进行管理。
RDBNS:关系型数据库管理系统,可以利用数据关系,完成数据库的管理。
DS:数据库服务器,数据库安装与内容存储服务器,可以是物理的也可以是虚拟的,一台服务器上可以有多个SQL SERVER 实例。
SSMS:SQL SERVER 管理系统,可视化的数据库管理系统,可视化操作。
插叙分析器:
系统数据库:master:记录所有的关于sql server 的系统信息。包括初始信息、登录账户、系统配置、目前系统中有哪些用户建立的数据库等。
model:是一个模板数据库,当新增数据库时,sql server 会以此数据库做模板。
msdb:专供sql server 代理程序使用的数据库,他存放有关警告、作业、数据备份、复制和维护等。
tempdb:用来存放所有暂时的数据表和存储过程,并提供sql server 存放目前使用中的数据表。
2、关系概念
范式:规范性。怎样合理的组织表与表间关系,达到数据的有效管理以及避免数据冗余。
第一范式:每一列都不重复,具备原子性,符合第一范式是所有关系型数据库的最基本要求。
第一范式的问题:新增异常、修改异常、删除异常、数据冗余。
第二范式:在第一范式基础上,消除冗余数据。(不存在非主属性对于码的部分函数依赖)
码:可以唯一标识每一行的属性或几个属性的组合。(订单号、物料)主属性,其他是非主属性。
什么是函数依赖:F(x)=y x是主属性 y是非主属性
F(x、y)=z 函数依赖
F(x)=z 存在非主属性z存在对x的部分依赖
订单拆分:订单的详细信息可以拆分成三个小表:订单表、物料表、订单明细表。
第三范式:在第二范式的基础上,删除所有与主键无关的列。
引用完整性:让列与列、表与表相互关联起来,主要用来约束保证引用完整性。也可以通过程序、触发器等保证完整性。
sql server 数据类型: 数字(整数、精确数值、近视数值、货币)、日期和时间、字符、
引用完整性:就是让列与列、表与表相互关联起来。主要用约束来保证引用的完整性,也可以通过程序、触发器等保障完整性。
约束:在设计数据表时,需要考虑字段的有效性、决定是否允许使用者没有输入值、决定数据的完整性和一致性等等。
主键限制:1、一个数据表最多只能有一主键。2、主键值不可以为null,而且其值在数据表中是唯一而且不可重复的值。
外键限制:数据表中的字段或字段组合与其他数据表中的主键索引值或具有唯一性限制的字段有关联特性的键。
没有唯一性的限制。所参考的主键或具有唯一性的键不一定是在其他的数据表,也可以参考本身的数据表,但所参考的数据表必须在同一个数据库中。
唯一性限制:如果一个字段使用了唯一性限制,则表示输入的值在这个数据中是唯一而不可重复的值,且系统会拒绝您的输入或修改。主键本身的定义已经有唯一的限制,所以不能再主键字段上在使用唯一性限制。
设计并创建视图:1、有一个或多个表产生
2、本身没有存放真正的数据,实际数据扔然是存在表中的,而view只是储存数据读取的定义罢了。
3、当用户操作view时,实际上系统会根据view的定义,把数据从表中取出来,并且过滤掉不合view定 义的数据,然后就将符合定义的数据显示出来。
索引:将数据表中的数据按某个字段内的值以某种顺序排列,以增加数据搜寻的速度。
索引并不是一个实体文件,而是数据库内的逻辑组件。
用来进行排序、查询性能提升一级限制等需求。
存储过程:存储过程是预先写好,而且已经经过编译的sql程序。
针对常用到的sql语句。
自定义函数:用户自定义函数的意义和存储过程很像,但是函数可以直接用在表达式中。用户自定义函数可以使用输入参数,但不支持输出参数。
常用语句: create table alter table drop table
SQL 语句:
新建数据库 demo 新建表 po 导入数据源
然后通过数据库联系 增 删 改 查
select * from unit 查询表
select * into unit_bak from unit 备份表
delete unit_bak 删除表
truncate table supply_bak 删除表
delete unit_bak where funitname =‘张’