数据库(db)
- 数据库(db):存储数据的仓库。数据库将数据存储在磁盘
- 数据库服务器:是指用来运行数据库服务的一台电脑。
- 数据库管理系统(dbms):专门用来操作和管理数据库的系统。
- 数据库管理系统的分类:
- 关系型数据库:MySql,Oracle,Sql Server,db2…
- 非关系型数据库:redis,MongoDB,NOSQL…
- 数据管理员(dba):管理数据库。
- 数据库的组成:数据表,对象,对象之间的关系组成。
- 数据表:按照一定规则和数据类型来存储数据的表格。
- 行=记录=实体:数据表中的一行数据。
- 列=字段=域:数据表中的列
MySQL
-
MySQL:前Sun公司推出的一个数据库管理系统,现属于Oracle。开源,体积小,性能好
-
MySQL5.5及之前的版本免费,之后也要收费。MySQl默认用的是InnoDB存储引擎。
-
使用MySQl之前一定要启动服务:
-
手动启动服务:打开任务管理器-》服务-》MySQL-》启动服
-
用命令启动/关闭服务:以管理员身份打开cmd->net start/stop mysql。
登录MySql客户端:
- 直接打开MySql客户端,输入密码。
- 用命令登录:
- 进行MySQL安装目录的bin目录下-》mysql -u root -p 密码
- 在环境变量的path中配置MySQL安装目录的bin目录-》mysql -u root -p 密码
- 用第三方客户端登录:Navicat for MySQL登录。创建连接-》输入用户名和密码
SQL:结构化查询语言。
专门用来对数据库进行操作的语言。后缀名:.sql
- sql语言的组成:
- DDL(数据库定义语言)
- DML(数据库操作语言)
- DCL(数据库控制语言)
- TCL(事务控制语言)
DDL:数据库定义语言。
数据定义语言(DDL ,Data Defintion Language)语句:
数据定义语句,用于定义不同的数据对象、数据库、表、列、索引等。常用的语句关键字包括create、drop、alter等
- 查看数据库:show databases;
- 创建数据库:create database 数据库名 [default charset utf8];
- 查看数据库的创建语句:show create database 数据库名;
- 删除数据库的语句:drop database 数据库名;
- 查看数据库信息 进入数据库之后 输入 Status ;
- 进入数据库:use 数据库名;
- 创建表:
- 创建表的操作属于DDL(数据库定义语言)操作,所以是由名要求的,对于表名称以及列名称的定义要求如下:
- 必须字母开头
- 长度为1~30个字符
- 对于同一用户不能用相同的表名称
- 不能使用保留字
create table 表名( 列名1 数据类型 列的特征(primary key,null,not null,unique key...), 列名2 数据类型 列的特征, ...... );
- 创建表的操作属于DDL(数据库定义语言)操作,所以是由名要求的,对于表名称以及列名称的定义要求如下:
- 查看当前数据库中所有的表:show tables;
- 查看表的创建语句:show create table 表名;
- 查看表的结构:desc 表名;
- 修改表名:alter table 原表名 rename 新表名;
- 修改表中的字段的类型:alter table 表名 modify 字段名 新数据类型;
- 增加表字段:alter table 表名 add column 字段名 类型;
- 删除表字段:alter table 表名 drop column 字段名;
- 修改字段名:alter table 表名 change 字段原名 字段新名 字段类型;
- 删除表:drop table 表名;
序号 | 类型 | 描述 |
---|---|---|
----1 | CHAR(长度) | 表示字符串类型, 数字 |
2 | VARCHAR(长度) | 可以存放数字,字母 |
3 | INT(长度) | 表示INT类型 |
4 | DATE | 表示日期类型(不包含时分秒) |
5 | datetime | 表示时间类型(包含时分秒) |
6 | TEXT | 放大文本字符串 |
7 | FLOAT | 浮点类型 |
8 | BLOB | 用于存放二进制文件,例如图片,电影,音乐 |
char与varchar后面接的数据大小为存储的字符数,而不是字节数
char于varchar的区别
char定义的是固定长度,长度范围为0-255,存储时,如果字符数没有达到定义的位数,会在后面用空格补全存入数据库中
varchar是变长长度,长度范围为0-65535,存储时,如果字符没有达到定义的位数,也不会在后面补空格
DML(重点):数据库的控制语言。
数据操作语言(DML , Data Manipulation Language)语句:
数据操作语句,用于添加、删除、更新和查询数据库记录,并检查数据的完整性。常用的语句关键字主要包括insert、delete、update和select等。(DML:添加,修改,删除,DQL:查询)
- 向表中插入数据:
- 表中所有字段必须都插入数据:insert into 表名 values(值列表);
- 写入的列一定要插入数据,表中允许为null列或者有默认值的列可以不插入数据:
- insert into 表名(列1,列2…) values(值1,值2…);
- 值列表和列名列表要一一匹配(个数一样,位置一样,类型也要一样)。
eg:insert into student2 values(1,'aa',18,'1',default,null); insert into student2(sid,sname,sage,ssex) values