数据库学习笔记1
1、数据库作用
数据的“仓库”
- 存储大量数据,方便检索和访问
- 保持数据信息的一致、完整
- 共享和安全
- 通过组合分析,产生新的有用信息
数据库与应用程序
- 应用程序
- 作用:响应操作并显示结果、向数据库请求数据
- 要求:美观、操作简单方便
- 数据库
- 作用:存储数据、检索数据、生成新的数据
- 要求:统一、安全、性能等
2、基本概念
实体
客观存在的、可以被描述的事物都是实体。
数据(Data)
对客观事物的符号表示,如图像、符号、数字、字母等,数据是数据库中存储的基本对象。
日常生活中,人们直接使用语言描述事物;计算机中,为了存储和处理这些事物,就要将事物的特征抽象出来组成一个记录(record)来描述。
数据库(DataBase)
按照数据结构来组织、存储和管理数据的仓库。
数据库是存储在一起的相关数据的集合,这些数据是结构化的,无有害或不必要的冗余,并为多种应用服务。
数据存放在表中。
数据库类型
- 纯文本数据、数据岛(XML)
- 适用于小型应用,对于大中型应用来说它存在诸多限制。
- 只能顺序访问,不能进行随机访问
- 查找数据和数据关系或多用户同时访问进行写操作时困难。
- 关系型数据库(关系模型是目前应用最广泛和最有发展前途的一种数据模型)
- 层次模型
- 网状模型
- 关系模型 √
数据库系统(DBS)
数据库系统(DataBase System , DBS) 是一个实际可运行的系统,可以对系统提供的数据进行存储,维护和应用。
它是由存储介质、处理对象和管理系统共同组成的集合体,通常有软件、数据以及数据库管理员组成。
数据库管理系统(DBMS)
数据库管理系统(DataBase Management System , DBMS)一种操作和管理数据库的大型软件,是用于建立、使用和维护数据库。
数据库管理系统的基本目标是:提供一个可以方便有效地存取数据库信息的环境。
关系型数据库管理系统成为 RDBMS ,R 指 Relation
作用
它对数据库进行统一的管理和控制,以保证数据库的安全性和完整性
3、时下流行的DBMS
1、MySQL
流行的开源、免费的关系型数据库。
小巧、功能齐全、可部署于Windows或Linux,适用于中小型甚至大型网站应用。
2、Oracle
应用广泛、功能强大,分布式数据库系统。
“关系-对象”型数据库。
3、SQL Server
针对不同用户群体的五个特殊的版本。
易用性好。
4、DBMS的主要功能
数据定义功能
- 提供数据定义语言(DDL)
- 定义数据库中的数据对象
数据操纵功能
- 提供数据操纵语言(DML)
- 操纵数据实现对数据库的基本操作(增删改查/CRUD)
数据库的运行和管理
数据库的建立和维护
5、MySQL数据库
MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于Oracle公司旗下。MySQL最流行的关系型数据库管理系统,在WEB应用方面MySQL是最好的RDBMS(Relational Database Management System,关系数据库管理系统)应用软件之一。
6、MySQL常用命令
启动与关闭MySQL服务
- 启动关闭命令:
- 启动:net start mysql / net start mysql80 (这个与安装版本有关或者安装时设置,可在进入服务查看)
- 关闭:net stop mysql / net stop mysql80
- 进入 服务 中打开和关闭
MySQL连接(需要配置系统path变量)
- mysql -h loaclhost:3306 -u root -p
常用命令
- use dbname; 选定默认数据库
- show databases; 显示所有数据库
- show tables; 显示默认数据中所有的表
- \c 放弃正在输入的命令
- \h 显示命令清单
- \q 退出mysql
- \s 查看mysql服务器状态信息
7、SQL语句操作数据库
删除数据库
drop database [ if exists ] 数据库名;
- if exists :判断是否存在;如果存在再进行删除数据库。
创建数据库(先删除 再创建 后使用)
create database [ if not exists ] 数据库名;
- if not exists :判断是否存在;如果不存在再进行创建数据库。
修改数据库编码信息
alter database 数据库名 default character set utf8 collate utf8_general_ci;
- default character set utf8 :设置数据库默认编码为 UTF-8。
- collate utf8_general_ci :设置数据库的排序规则。
8、备份与还原数据库(命令行)
备份数据库
mysqldump [option] 备份数据库名 > 备份数据库名.sql
/**
* simpledb : 示例数据库
* simpletable : 示例数据库中的一张示例表
*/
//备份整个数据库(包含数据)
mysqldump -u root -p simpledb > simpledb.sql
//备份数据库(不含数据)
mysqldump -u root -p -d simpledb > simpledb.sql
//备份数据库中的某张表(包含数据)
mysqldump -u root -p simpledb simpletable > tabledata.sql
//备份数据库中的某张数据表的表结构(不含数据)
mysqldump -u root -p -d simpledb simpletable > tablestructure.sql
//备份时可以指定数据的字符集
mysqldump -u root -p --default-character-set=utf8 simpledb > simpledb.sql
还原数据库
mysql -u root -p 还原数据库名 < 还原的数据库文件.sql