MySQL数据库的安装及简单操作
安装
ubuntu
- sudo apt-get install mysql-server 安装mysql
- service mysql stop 停止MySQL服务
- service mysql restart 开始MySQL服务
- mysql -uroot -p 连接mysql数据库(-u后面跟的时用户名,root是超级管理员,-p后面跟的是密码,也可以直接写在-p后面)
- exit 退出mysql
windows
安装MySQL:https://www.cnblogs.com/xsmile/p/7753984.html
- net start mysql 启动mysql服务
- net stop mysql 停止mysql服务
- mysql -uroot -p 连接mysql数据库(-u后面跟的时用户名,root是超级管理员,-p后面跟的是密码,也可以直接写在-p 后面)
- exit 退出mysql
MySQL数据库登陆
Ubuntu中,打开终端(windows中可以使用win+R键,输入cmd,然后回车。),输入mysql -uroot -p 正确输入密码之后,当出现如下界面的时候,说明MySQL登陆成功。
数据库操作
数据库语言代码后面有一个英文的分号,初学很容易忘记。
select now(); 查看当前时间
select version(); 查看数据库版本
show databases; 查看所有的数据库
create database 数据库名 [charset = utf8]; 创建一个数据库,编码格式为utf-8,如果不加charset=utf8,默认编码格式为latin
drop database 数据库名; 慎用:删除数据库 , 如果数据库名有符号,用table键上方的小撇包起来【`数据库名`】
select database() 查询当前正在使用的数据库
use 数据库名; 切换需要使用的数据库
数据库表
show tables; 查看当前数据库中拥有的所有的表
create table 表名 (字段 类型 约束[,字段 类型 约束]) 创建一个表
常用字段类型:
int,tinyint : 整数型
decimal(5, 2): 浮点数,一共有五位,小数点以后有2位
varchar(3): 字符串,varchar(3) 写几位存几位,超过3位时,只能存3位。
char(3):字符串,无论写几位都只能储存3位,不足3位的用空格补齐
date, time, datetime:分别时日期(2018-07-08)、时间(09:20:32)、日期时间(2018-07-08 09:20:32)
enum(): 枚举类型
约束:
primary key:主键,物理上存储的顺序
not null:非空,此字段不允许填写空值
unique:唯一,此字段的值不允许重复
default 默认值:默认,当不填写此值时会使用默认值,如果填写时以填写为准
unsignde无符号: 无符号的,约束int数据类型,只有正数。
auto_increment 自增:该字段的数据自动增长,约束int类型数据
desc 表名 查看表结构
show create table 表名; 查看表的详细结构
insert into 表名 values(数据) ; 向表中插入一条数据,插入数据的顺序必须对应创建表时设置的字段,同时符合每个字 段的约束。
select * from 表名; 查看表中的所有数据
alter table 表名 add 字段名 类型 [约束]; 向表中添加一个字段
alter table 表名 modify 字段名 类型及约束; 在不修改字段名的情况下,修改该字段的类型及约束
alter table 表名 change 原字段名 新字段名 类型及约束 修改该表中的字段名及约束
alter table 表名 charset=utf8 修改表的编码
alter table 表名 drop 字段名 删除表中的一个字段,同时删除该字段的数据
drop table 表名 删除表
注:所有有关删除的都要慎用,数据来之不易。如果不需要的话,可以用逻辑删除(后面有介绍)。
数据库表的操作
增加:
insert into 表名 values (数据) 数据数量和位置要和表中的字段一一对应。
自增型(auto_increment)变量可以用0,default,null进行占位;
枚举型(enum)数据可以根据枚举的个数,用数字代表数据,1代表枚举的第一个数据。
insert into 表名(字段名) values (数据)[,(数据)] 插入列举的字段对应的数据,不可为空的字段必须插入,有默认值的字段可以不插。支持同时插入多条数据。
修改:
update 表名 set 字段名 = 数据 [ where 条件]; 修改表中某个字段的数据,添加条件是为符合某一条件的记录全部修改。修改单条记录时,条件一般为主键。如果不添加条件,则修改所有记录的该字段
查询:
select * from 表名 [where 条件] 查找符合条件的所有记录
select distinct 字段名 from 表名 查询该字段,去除重复的
select 字段名[, 字段名] from 表名 [where 条件] 查找符合条件的该字段的数据
select 字段名 as 显示名[, 字段名 as 显示名] from 表名 [where 条件]
查找符合条件的记录,显示select后面字段名对应的记录,显示顺序根据select后面字段名的顺序执行。
删除:
物理删除:
delete from 表名; 删除表中的所有数据
delete from 表名 where 条件 删除符合约束的数据行
逻辑删除:
# 给表添加一个字段,用来表示这条信息已经不能再使用(例如is_delete default 0)
alter table 表名 add 字段名 类型及约束