MYSQL安装与基础命令学习(一)

学习目标:

12天掌握SQL基础


学习内容:

1、 mysql 安装与基本命令 2、 SQL基础:查询与排序-select、运算符、聚合分组查询等 3、 SQL进阶:复杂查询方法-视图、子查询、函数等 4、 SQL进阶: 集合运算-表的加减法和join等

学习时间:

1、周一至周五晚 7点-10点 2、周六早上 8点-11点 3、周日下午 3 点-下午 6 点

学习产出:

技术笔记 4 篇


1 安装并配置mariadb

系统:Centos release 7.9.2009
软件版本:mariadb5.5.68

1.1 安装mariadb

$yum -y install mariadb mariadb-server

1.2 启动mysql

$systemctl start mariadb //启动
$systemctl enable mariadb //设置开机启动
$systemctl status mariadb

1.3 修改mysql初始密码

$mysql_secure_installation

//初次运行时提醒输入密码,直接回车。

提示是否设置root用户密码,选择Y
依次设置并确认密码
其他配置回车默认设置

1.4 测试登陆

$mysql -uroot -p

1.5 修改mysql默认语言

$cd /etc/my.inf ,并增加四条命令

[mysqld]下添加
init_connect='SET collation_connection = utf8_unicode_ci' 
init_connect='SET NAMES utf8' 
character-set-server=utf8 
collation-server=utf8_unicode_ci 
skip-character-set-client-handshake

修改/etc/my.cnf.d/client.cnf

$vi /etc/my.cnf.d/client.cnf
在[client]中添加
default-character-set=utf8

修改文件/etc/my.cnf.d/mysql-clients.cnf
$vi /etc/my.cnf.d/mysql-clients.cnf

[mysql]中添加
default-character-set=utf8

重启mariadb

$systemctl restart mariadb

1.6 进入mariadb界面,查看字符集修改效果(效果图)

$mysql -uroot -p
$mariadb> show variables like "%character%";show variables like "%collation%";

2 mysql的基本命令

命令介绍

DDL:数据定义语言
1. CREATE : 创建数据库和表等对象
2. DROP : 删除数据库和表等对象
3. ALTER : 修改数据库和表等对象的结构

DML:数据操纵语言(使用率90%)
1. SELECT :查询表中的数据
2. INSERT :向表中插入新数据
3. UPDATE :更新表中的数据
4. DELETE :删除表中的数据

DCL:数据控制语言
1. COMMIT : 确认对数据库中的数据进行的变更
2. ROLLBACK : 取消对数据库中的数据进行的变更
3. GRANT : 赋予用户操作权限
4. REVOKE : 取消用户的操作权限

2.1 数据库

创建数据库名为 product:

# create database product;

创建数据库
查看有哪些数据库:

# show databases;

查看数据库

2.2 表格的增删改

使用数据库并在数据库product下新建表格Addressbook:

#use product; //进入product数据库
#create table Addressbook(regist_no integer not null,name varchar(128) not null,address varchar(128) not null,tel_no char(10),mail_address char(20),PRIMARY KEY(regist_no));

创建表
删除表-使用数据定义语句

# drop table <表名>;

删除表
查看库中存在的表:

# show tables;

查看所有表

2.3 列的增删改

增加单个列:

# alter table Addressbook add column postal_code char(8) not null;

单列增加
增加多个列:

# alter table Addressbook add column (postal_code char(8) not null,country char(20));

多列增加
多列增加2
删除列:

# alter table Addressbook drop column country;
# alter table Addressbook drop column country;

删除列
* ALTER TABLE和DROP TABLE都是不可逆的。

2.4 数据增删改

针对部分插入数据–包含列清单:

#INSERT INTO Addressbook (regist_no, name, address, tel_no, mail_address) VALUES (0001, 'zhangsan', 'fuzhou', '1234567898','12696@qq.com');

针对全部列插入数据–省略列清单:

#INSERT INTO Addressbook VALUES (0001, 'zhangsan', 'fuzhou', '1234567898','12696@qq.com');

数据插入
查询插入后的数据数据查看
清空表中数据并查看:

# truncate table <表名>;select * from <表名>;

* 使用truncate清除数据比deletefrom和drop更有效率
清除数据1
查看清除数据效果
DB2/MYSQL/POSTGREDB/SQL插入多条数据:

#INSERT INTO Addressbook VALUES(0001,'zhangsan','fuzhou','1234567898','12696@qq.com'),(0002, 'zhangsan','fuzhou','1234567898','12696@qq.com'),(0003,'zhangsan','fuzhou','1234567898','12696@qq.com');

插入多条数据
更新修改数据

# update  <表名> set <列名1>=’value1’ where <列名3>=’value3’ ;
// 如果<列名3>=’value3’ 则修改<列名1>的值改为’value1’ 
# update  <表名> set <列名1>=NULL where <列名3>=’value3’ ;
// 如果<列名3>=’value3’ 则修改<列名1>的值改为NULL(<列名1>必须允许NULL值)
# update  <表名> set <列名1>=NULL, <列名2>=’value2’ where <列名3>=’value3’;
// 如果<列名3>=’value3’ 则修改<列名1>的值改为NULL,<列名2>的值改为value2

更改数据
查看更新后的数据

小结:

每个完整的命令后面以;结尾。
多个命令合并可用都逗号隔开,例如update <table> set <column1>='',<column2>='';
alter table 和drop table的操作是不可逆的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值