1.1 数据库概述
存储数据的仓库(永久性)
1.2 为什么学习数据库?
因为我们之前所学的技术操作数据只能保存在内存上,程序一关闭 或者电脑重启,这些数据全部会消失。而数据库它能够永久性的保存数据。
1.3 数据库能够做什么?
(1)存储大量的数据
(2)数据库具有"检查约束功能"
(3)数据的共享性以及安全性。
(4)通过现有的信息进行重新组合得到需要的信息。
1.4 sql与sqlserver的区别
我们学习的是叫sql语言,安装了sql server的数据库软件。
利用sql server数据库管理软件使用sql语言来编写创建数据库以及存储数据。
sql:一种语言,结构化查询语言
sqlserver:管理数据库的软件。
1.5 应用程序与数据库的关系
应用程序:想服务器发出请求,获取数据。最终显示数据
数据库:存储数据,提供信息。
1.6 当今流行的数据库有哪些?
> 1. SQL Server 微软公司提供的一款数据库 版本:2000 2005 2008 **2008R2** 2012 2014
> 版本:企业版,专业版,.....
>
> 2. Oracle数据库 Oracle甲骨文公司 (S2学习的) 有些服务插件要收费。
>
> 3. MySQL数据库 Oracle甲骨文公司 (Y1学习的)与SQL Server具有95%的相似度
>
> 4. DB2数据库 IBM公司(大型数据库)收费的 大厂
**操作数据库必须安装SQL Server数据库管理软件**
3.创建数据库前的准备工作
**打开SQL Server数据库管理软件时,需启动2个开关(服务)。安装后,这2个开关都是自开启。
**有一个开关(服务)是不影响开机速度的---2个TCP|IP,即只开启一个服务即可**
方式1:开始键---控制面板---系统和安全---管理工具--服务--SQL Server(MSSQLSERVER)--启动即可
方式2:开始键---SQL Server文件夹----SQL Server配置管理器---SQL Server(MSSQLSERVER)--启动即可
方式3:cmd命令(管理员的方式)
开启 net start mssqlserver
关闭 net stop mssqlserver
**打开SQL Server数据库管理软件后登录注意事项**
服务名称: . 127.0.0.1 localhost
身份验证: SQL Server身份验证
登录名:系统用户 sa
密码:安装时设置的 123
**安装SQL Server数据库管理软件后,自动会有四个系统数据库**
- master 系统核心数据库
- model 模型|模式数据库
- msdb 警告信息数据库
- tempdb 临时数据库
**创建用户和删除用户**
------
4.创建与删除数据库
数据库中大部分的操作都可以由鼠标直接进行完成。也可以通过代码实现。
第一种方式创建数据库与删除数据库**
"鼠标","对象资源管理器"
db 全称 database 数据库
创建数据库命名规则:以db_开头
步骤:
点击数据库进行右击--新建数据库--命名即可
第二种方式创建数据库与删除数据库**
"脚本","查询分析器","新建查询","代码"
创建数据库的语法:
create database db_数据库名称;
删除数据库的语法:
drop database db_数据库名称;
注意事项:
使用脚本的方式创建与删除数据库时,所写的代码必须要选中才能执行。
当命令已成功完成。说明数据库创建成功。
```
**深入理解创建数据库**
可以指定数据库的存储位置,存储大小等等一些操作。
创建任意一个数据库时,都会产生2个数据库文件。
1.主数据文件 文件扩展名: mdf (霉豆腐)
2.日志文件 文件扩展名: ldf (烂豆腐)
在某种情况下:当主数据文件的内存已满时,会自动新增一个次要数据文件
文件扩展名: ndf (嫩豆腐)
5.SQL语言的注意事项
1.sql语言中不区分大小写,建议所有的关键字全大写
2.sql语言编写完毕后如何保存?ctrl+s
3.sql语言中的注释 要了解
单行注释 --
多行注释 /**/
快捷键单行注释: ctrl+k+c
6.数据库其他的基本操作
当数据库创建好之后,需要拷贝出去,进行脱机,分离等操作。
脱机|联机
脱机:让当前指定的数据库与SQL Server数据库管理软件断开连接
连接:让数据库连接管理软件
分离|附加
分离:让数据库完全与SQL Server数据库管理软件脱离
附加:导入数据库
备份|还原
1.通过脚本创建数据表
语法:创建-create 表格-table
create table tb_表名
(
属性名 数据类型,
属性名 数据类型,
属性名 数据类型,
属性名 数据类型,
属性名 数据类型
)
*/eg:
--数据库脚本创建
create database db_stumanagerSystem;
--使用当前所创建的数据库 use:使用
use db_stumanagerSystem;
--特工信息表
--特工编号,名字,性别,年龄,职业,地址,电话
create table tb_tegong
(
tid int,
name varchar(20),
sex char(2),
age int,
profession varchar(20),--职业
taddress varchar(100),
tel varchar(100)
)
1.数据表
由行和列组成的表格称之为数据表。
2.在数据库中创建数据表的准备工作?
①确定表的属性[列名|字段]
②确定的属性的类型
③确定表中的主键和是否标识列[自增长]
④约束
3.数据类型的前提
- 精度:针对小数,小数点左边和右边的"个数"和
例如:1234.4321 精度为8 12.23 精度:4
- 小数位数:针对小数,小数点右边的"个数"和
12.23 小数位数:2
- 长度:针对字符串
数据库定义字符串,必须要规定长度。
指定姓名属性 字符串的存储范围的最大值是100
实际存储的字节长度 1个字符等于2个字节
4.sqlserver的常用的数据类型
int 整形
float 浮点型 小数
char 固定长度
varchar 可变长度
datetime 日期时间
```
4.1数据库中的数据类型
整型 int
小数 float
布尔值 bit 0 1
图像 image
字符串
char-常用,固定字符
varchar-常用,可变字符
text:如果存储数据超过8000个字节,就用text
--上面三个字符串类型以字节为单位
nchar
nvarchar
ntext
--上面三个字符串类型以字符为单位
1个字符 = 2个字节。
日期
datetime
2021/11/14
2021-11-14
学数据库只要掌握整型,字符串,日期即可。int char varchar datetime
数据库约束 作用:限制值的插入 . 约束关键字:constraint
5.数据库中的约束[6大+1个标识]
①主键约束:一个表只能有一个主键[唯一的,不能重复,不能共用] primary key
②非空约束:约束字段的值不能为空 not null
③检查约束:限制数据 check
④默认约束: default
⑤唯一约束:在表中的作用与主键类似,可以有多个唯一约束 unique
⑥外键约束: foreign....key...references
--1.非空约束 not null
-- 如果使用该约束定义在某个属性上,将来插入值时,不能为空。--2.检查约束 check
-- 如果使用该约束定义在某个属性上,将来插入值时,必须要按照指定的值插入
--3.默认约束 default
-- -- 如果使用该约束定义在某个属性上,将来插入值时,不想手动插入,可以设置默认值。
--4.唯一约束 unique
-- 如果使用该约束定义在某个属性上,将来插入值时,必须保证这个值在这个属性中是唯一的。
--5.主键约束 primary key
-- 主键约束是用来唯一标识每一行记录的。
--类似唯一约束,当一条记录中,如果存在编号,就可以直接通过主键约束定义。
--特点:非空,唯一。
--一个表格中只允许一个主键