为什么要使用数据据库
·登录界面
·用户信息查询
~ 对比 ~
数据,集合,内存的易失性 断电丢失
文件 可以存,查询不便
好处
· 实现数据持久化
· 使用完整的管理系统统一管理,易于查询
数据库的相关概念
DB
数据库(database):存储数据的仓库,保存一系列有组织规范的数据。
DBMS
数据库管理系统(Database Management System):数据库是通过DBMS创建和操作的容器。用于管理DB中的数据。
常见的数据库管理系统:mysql(开源),oracle(专业只做数据库软件,但是贵),db2(一般用于处理海量数据),sqlserver(ms)。
DBMS分两类:
- 基于共享文件系统的DBBMS(Access)
- 基于客户机——服务器(c/s架构)的DBMS
SQL
结构化查询语言(Structure Query Language):专门用来与数据库通信的语言。
SQL优点
· 所有数据库语言基本都支持SQL。
· 简单易学
· 虽简单,但实际是一种强有力语言,灵活使用开源进行复杂和高级数据库操作。
数据库特点
1.将数据放到表中,表再放到库中。
2.一个数据库中开源有多张表,每个表都有一个名字。表名具有唯一性。
3.表具有一些特性,这些特性定义了表如何存储,类似于类的设计。
4.表由列组成,也称字段。所有都由一列或多个列组成,每一列类似属性。
5.表中数据按行存储,类似于对象。
MySQL
MySQL服务的启动和停止
方法一:开始-计算机-管理-服务
方法二:右键开始-命令行(管理员)
net start mysql
net stop mysql
MySQL服务端的登录和退出
方法一:mysql command line client(只限于root用户)
方法二:右键开始-命令行(管理员)
mysql(命令不是服务名) -h(代表主机) localhost -P(端口号) 如3306 -u root -p
完整(远程) mysql -h localhost -P 3306 -u ee -p12345(密码可要可不要,中间不能有空格)
(连接本机h和P可不写)
退出:exit
MySQL常见命令
1.查看当前所有数据库
show databases;
2.打开指定的库
use 库名;
3.查看当前库的所有表
show tables;
4.查看其它库的所有表
show tables from 库名;
5.创建表
create table 表名(
列名 列类型;
列名 列类型;
)
6.查看表结构
desc 表名;
MySQL语法规范
1.不区分大小写,但是建议关键字大写,表名,列名小写。
2.每条命令用分号结尾。
3.每条命令根据需要,可以进行缩进或者换行。
4.注释。
单行注释:#注释文字
单行注释:-- 注释文字
多行注释:/注释文字/
界面软件
sqlyog,navcat
DQL语言学习
(Data Query Language数据查询语言)
基础查询
语法
select 查询列表
from 表名;
特点
1、查询列表可以是字段、常量、表达式、函数,也可以是多个
2、查询结果是一个虚拟表
示例
1、查询单个字段
select 字段名 from 表名;
2、查询多个字段
select 字段名,字段名 from 表名;
3、查询所有字段
select * from 表名
4、查询常量
select 常量值;
注意:字符型和日期型的常量值必须用单引号引起来,数值型不需要
5、查询函数
select 函数名(实参列表);
6、查询表达式
select 100/1234;
7、起别名
①as
②空格
8、去重
select distinct 字段名 from 表名;
9、+
作用:做加法运算
select 数值+数值; 直接运算
select 字符+数值;先试图将字符转换成数值,如果转换成功,则继续运算;否则转换成0,再做运算
select null+值;结果都为null
10、【补充】concat函数
功能:拼接字符
select concat(字符1,字符2,字符3,...);
11、【补充】ifnull函数
功能:判断某字段或表达式是否为null,如果为null 返回指定的值,否则返回原本的值
select ifnull(commission_pct,0) from employees;
12、【补充】isnull函数
功能:判断某字段或表达式是否为null,如果是,则返回1,否则返回0
条件查询
语法
select 查询列表
from 表
where 筛选条件
order by 排序列表 【asc}desc】
特点
1、asc :升序,如果不写默认升序
desc:降序
2、排序列表 支持 单个字段、多个字段、函数、表达式、别名
3、order by的位置一般放在查询语句的最后(除limit语句之外)
DML语言学习
(Data Manipulation Language数据增删改)
DDL语言学习
(Data Define Language)
TCL语言学习
(Transaction Control Language事务控制语言)