MYSQL入门指南:小白必看

发表时间: 2018-11-06 17:25

一、MYSQL基本介绍

什么是mysql

mysql是一款最为著名,应用最为广泛的开源的数据库软件

mysql主要特点

(1)主要适用于中小型规模,

(2)支持Linux/Unix、Windows等多种操作系统

(3)使用C和C++编写,可移植性比较强

(4)通过使用API支持Python/Java/Perl/PHP等多种语言

(5)适用于LAMP、LNMP平台

二、MYSQL基本使用

主配置文件位置:/etc/my.cnf

默认使用的端口:3306

使用的传输协议:TCP

进程使用的多有者及所属主:mysql用户(安装软件包时候系统会自动添加该用户)

1.数据库操作指令的基本类型:

mysql指令:切换数据库环境、查看数据库状态、退出控制

sql指令:数据库的创建/操作(增、删、改、查)/授权

2.数据库的基本注意事项

操作指令不区分大小写,(密码、赋值变量除外)

每条sql命令都默认以;为结束符结尾

不支持tab键自动补齐

\c可以废弃当前编写错误的操作指令

3.查找mysql的初始密码

命令行输入:awk ‘/temporary password/{print $NF}’ /var/log/mysqld.log

三、数据库的基本操作

1.常用的字段特征

数值类型

int:大整数,默认宽度(11),有效长度0~2^32-1,设置了zerofill则会自动补位。

tinyint:微小整数 带符号有效长度-127~128,unsigned不带符号有效长度(0~255)

float:单精度浮点数,默认4字节 (7,2)表示数字总长度7位,小数为2位。

字符类型

char:定长,预先设置一个空间大小,默认是(1),必须小于256.

格式:char(),可以不用加上括号,默认值1。

–备注:如果给定的数值不够预先设置空间的宽度,会自动补充空格填充至指定宽度,浪费存储空间。

日期时间类型:datetime/timestamp

格式:yyyymmddhhmmss (20180906173038)

datetime: 如果没有赋值,则会显示为空(NULL)。

timestamp:如果没有赋值,自动以当前时间赋值,

日期类型:

date 格式:yyyymmdd 占用4字节。

存储范围:0001-01-0~9999-12-31。

year 年有效值:1901-2155 占用1字节。

时间类型:

datetime 格式:hhmmss,小时是24小时制。

time 格式:hh:mm:ss 占用3字节。

枚举类型:

enum:从给定的集合中选择单个值,ENUM

格式:enum(值1,值2,值N)

set:从给定的集合中选择一个或者多个值,SET

格式:set(值1,值2,值N)

时间函数

year(now()); month(now()); date(now()); day(now()); time(now());

使用select命令可以直接输出结果:

select year(now()); 2018

select date(now()); 2018-09-07

select month(now()); 9

select day(now()); 7号

select time(now()); 09:43:25

2.数据库的基本操作命令

1.库的基本操作

create database 库名; //新建库

use 库名; //切换库

select database(); //显示当前所在的库

drop database 库名;//删除库

2.表的操作

<建表:表必须存放在库里>

字段:表格中的列,要字段名称。

create table 库名.表名 (

字段1 字段类型(宽度/不写默认指定), //约束条件 char,

字段2 字段类型 (宽度/不写默认指定), //约束条件 int,

字段3 字段类型 (宽度/不写默认指定), //约束条件 char,

);

desc 表名称;//显示表结构

–备注:(表格中的数字大小不由表格宽度决定,由字段类型中的数字类型决定,如果设置了zerofill,宽度不够会用0去补位)。

在表中增加数据

首先选定要操作的库,

use 库名称;

insert into t1(表名称) values(“char”,int,“char”),

->(“char”,int,“char”);

删除表中的数据

删除: delete from 表名 where 条件; //删除格式

delete from t1 where name=“w”;//删除表各种的某一个数据

delete from t1;//清空表格所有内容,但是不删除表格

drop table t1;//删除表格t1。

drop database game;//删除game库。

修改表中的数据

修改: update 表名 set 修改以后情况 where 条件;

update t1 set name=“a” where age=21;

将t1表中的age=21的人name改为a。

查看表中的数据

select * from t1(表名称);//查看表的所有信息

select * from t1(表名称) where 条件;//指定条件删除信息