数据库基本概念
1.数据库:用于存储和管理数据的仓库。
2.数据库的特点:
1).持久化存储数据的。其实数据库就是一个文件系统。
2).方便存储和管理数据。
3).使用了统一的方式操作数据库。
MySQL数据库软件
1.安装(可参考百度)
2.卸载
1).mysql安装目录下找到my.ini文件
复制datadir="C:/ProgramData/MySQL/MySQL Server 5.5/Data/
2).控制面板卸载MySQL
3).删除C:/ProgramData目录下MySQL文件夹
3.配置
1).MySQL登录
1.MySQL -uroot -p密码
2.MySQL -hip -uroot -p连接密码
3.MySQL --host=ip --user=root --password=连接目标密码
2).MySQL退出
1.exit
2.quit
3).MySQL目录结构
(1).MySQL安装目录
配置文件:my.ini
(2).MySQL数据目录
数据库:文件夹
表:文件
数据:数据
SQL
1.什么是SQL?结构化查询语言
其实就是定义了操作所有关系型数据库的规则。
2.SQL通用语法
1).SQL语句可以单行或多行书写,以分号结尾。
2).可使用空格和缩进来增强语句的可读性。
3).MySQL数据库的SQL语句不区分大小写,关键字建议使用大写。
4).3种注释
单行注释:–注释内容或#注释内容(MySQL特有)
多行注释: /* 注释 */
3.SQL分类
1).DDL 数据定义语言
用来定义数据库对象:数据库,表,列表等关键字:create,drop,alter等
2).DML 数据操作语言
用来对数据库中表的数据进行增删改。关键字:insert,delete,update等
3).DQL数据查询语言
用来查询数据库中表的记录(数据)。关键字:select,where等
4).DCL数据控制语言
用来定义数据库的访问权限和安全级别及创建用户。
DDL:操作数据库、表
1.操作数据库:CRUD
1).C(create)创建
创建数据库:
create database 数据库名称;
创建数据库,判断不存在,再创建:
create database if not exists 数据库名称;
创建数据库,并指定字符集:
create database 数据库名称 character set 字符集名
2).R(retrieve)查询
查询所有数据库名称:
show databases;
查询某个数据库的字符集:
show create database 数据库名称;
3).U(update)修改
修改数据库的字符集:
alter database 数据库名称 character set 字符集名称;
4).D(delete)删除
删除数据库:
drop database 数据库名称;
判断数据库存在,存在再删除:
drop database if exists 数据库名称;
5). 使用数据库
查询当前正在使用的数据库名称:
select database();
使用数据库:
use 数据库名称;
2.操作表
1).C(create)创建
1.语法:
create table 表名(
列名1 数据类型1,
列名2 数据类型2,
……
);
数据库类型:
(1).int :整数类型
(2).double:小数类型 例 score double(5,2);
(3).date:日期,只包含年月日
(4).datetime:日期,包含年月日时分秒
(5).timestamp:包含年月日时分秒(如果将来不给这个字段赋值,或赋值为null,则默认使用当前的系统时间,来自动赋值)
(6).varchar:字符串
name varchar(20);最大20字符
2).R(retrieve)查询
查询某个数据库中所有的表的名称
show tables;
查询表结构
desc 表名;
3).U(update)修改
(1).修改表名
alter table 表名 rename to 新表名;
(2).修改表的字符集
alter table 表名 character set 字符集名称
(3).添加一列
alter table 表名 add 列名 数据类型;
(4).修改列名称 类型
alter table 表名 change 列名 新列名 新数据类型;
alter table 表名 modify 列名 新数据类型;
(5).删除列
alter table 表名 drop 列名;
4).D(delete)删除
drop table 表名;
drop table if exists 表名;
复制表 create table 表名 like 被复制的表名;
DML:增删改表中数据
1.添加数据:
insert into 表名(列名1,列名2……) values(值1,值2……);
注意:除了数据类型,其他类型都要用引号
2.删除数据:
delete from 表名 where 条件;
注意:
1).如果不加条件,则删除表中所有记录
2).删除所有记录
delete from 表名;
truncate table 表名;(先删除表,再创建一张一样的表)
3.修改数据:
update 表名 set 列名1=值1,列名2=值2……where 条件;