码迷,mamicode.com
首页 > 数据库 > 详细

萌新浅谈LINUX下数据库 表记录增删改查 、 WHERE条件应用 、 数据备份与恢复

时间:2019-08-05 23:15:39      阅读:199      评论:0      收藏:0      [点我收藏+]

标签:roo   inux   from   order   目标   var   备份与恢复   ted   排列   

今天为大家带来的是一些干货,鄙人才疏学浅不善言辞,还望大家多包涵

首先登录数据库
技术图片

查一下有什么库
MariaDB [(none)]> SHOW DATABASES;
技术图片

创建库
MariaDB [(mysql)]> CREATE DATABASE xiangyashan;
检查一下是否创建成功
MariaDB [(mysql)]> SHOW DATABASES;
技术图片
建表格
MariaDB [mysql]> USE xiangyashan;
CREATE TABLE base(编号 char(13), 姓名 varchar(20), 性别 char(1), 手机号 char(13), 通信地址 varchar(48));
技术图片
查询建完的表格
DESC base;
技术图片

批量添加表信息,注意后面分号,逗号的区分,最后结尾的时候是分号,每一条信息之间的恶消息是用逗号进行间隔。
MariaDB [xiangyashan]> INSERT INTO base VALUES
-> (‘MY2020110001‘, ‘宇智波赵四‘, ‘男‘, ‘13145201314‘, ‘木叶村‘),
-> (‘MY2020110002‘, ‘旋涡刘能‘, ‘男‘, ‘131111111111‘, ‘木叶村‘),
-> (‘RX3030120001‘, ‘日向大拿‘, ‘男‘, ‘13122222222‘, ‘日向一族‘),
-> (‘RX3030120002‘, ‘日向小蒙‘, ‘女‘, ‘13333333333‘, ‘日向一族‘),
-> (‘MY2020110001‘, ‘春野大脚‘, ‘女‘, ‘15666666666‘, ‘木叶村‘),
-> (‘FG2020110001‘, ‘赤砂长贵‘, ‘男‘, ‘17777777777‘, ‘风之国‘),
-> (‘HG2020110001‘, ‘齐木老七‘, ‘男‘, ‘13141111314‘, ‘火之国‘);
技术图片

确认表格 base 的数据内容
MariaDB [xiangyashan]> SELECT * FROM base;

技术图片

修改数据表中的信息
姓名=‘宇智波赵四‘ 的人的联系电话修改为 ‘13566778899‘
MariaDB [xiangyashan]> UPDATE base SET 手机号=‘13566778899‘ WHERE 姓名=‘宇智波赵四‘;

技术图片

删除base表中 姓名=‘旋涡刘能‘ 的数据记录
DELETE FROM stuinfo WHERE 姓名=‘旋涡刘能‘;
技术图片

检查修改后的表格内容:
MariaDB [xiangyashan]> SELECT * FROM base;
技术图片

再为表格添加几条记录(单条添加)

INSERT INTO base VALUES(‘SG2020110001‘, ‘竹取永强‘, ‘男‘, ‘13145212345‘, ‘水之国‘);
INSERT INTO base VALUES(‘RX2020110003‘, ‘日向大拿‘, ‘男‘, ‘12345678998‘, ‘日向一族‘);
INSERT INTO base VALUES(‘SG2020110001‘, ‘干柿长山‘, ‘男‘, ‘15556661314‘, ‘水之国‘);
INSERT INTO base VALUES(‘YR2020110001‘, ‘托斯天来‘, ‘男‘, ‘12501201314‘, ‘音忍村‘);
技术图片

检查是否添加成功
MariaDB [xiangyashan]> SELECT * FROM base;
技术图片

SELECT查询表记录
列出表中每一条记录的 姓名、手机号
MariaDB [xiangyashan]> SELECT 姓名,手机号 FROM base;
技术图片

列出表中 性别=‘女‘ 的详细数据记录
MariaDB [xiangyashan]> SELECT * FROM base WHERE 性别=‘女‘;。

技术图片

列出表中 性别=‘女‘ 的记录的 姓名、手机号
MariaDB [xiangyashan]> SELECT 姓名,手机号 FROM base WHERE 性别=‘女‘;

技术图片

列出base表中 通信地址=‘木叶村‘ 的详细数据记录
MariaDB [xiangyashan]> SELECT * FROM base WHERE 通信地址=‘木叶村‘;

技术图片

WHERE简单匹配

列出表中 通信地址!=‘火之国‘ 的数据记录
MariaDB [xiangyashan]> SELECT * FROM base WHERE 通信地址!=‘火之国‘;
注意区分是不属于火之国的人员

技术图片

列出表中 通信地址=‘日向一族‘ 而且 性别=‘女‘ 的数据记录
MariaDB [xiangyashan]> SELECT * FROM base WHERE 通信地址=‘日向一族‘ AND 性别=‘女‘;
技术图片

列出表中 通信地址=‘木叶村‘ 或者 性别=‘男‘ 的数据记录
MariaDB [xiangyashan]> SELECT * FROM base WHERE 通信地址=‘木叶村‘ OR 性别=‘男‘;
技术图片

WHERE高级匹配

列出表中 姓名 为 宇智波赵四、春野大脚、干柿长山、竹取永强 的数据记录
MariaDB [xiangyashan]> SELECT * FROM base WHERE 姓名 IN (‘宇智波赵四‘, ‘春野大脚‘, ‘干柿长山‘, ‘竹取永强‘);
技术图片

列出表中 通信地址 包括 ‘国‘ 字串的数据记录
MariaDB [xiangyashan]> SELECT * FROM base WHERE 通信地址 LIKE ‘%国%‘;

技术图片

列出表中 姓名 只有 五个字 的数据记录
MariaDB [xiangyashan]> SELECT * FROM base WHERE 姓名 LIKE ‘_____‘;
注意;LIKE 后面的下划线五个,因为要求是选的名字有五个字的

技术图片

整理查询结果

查询表中 性别=‘男‘ 的人数
MariaDB [xiangyashan]> SELECT count(*) FROM base WHERE 性别=‘男‘;
技术图片

列出表中 通信地址=‘木叶村‘ 的数据记录,按编号降序排列
MariaDB [xiangyashan]> SELECT * FROM base WHERE 通信地址=‘日向一族‘ ORDER BY 编号 DESC;

技术图片

列出表中 性别=‘男‘ 的第4~5条记录(LIMIT 3,2)
MariaDB [xiangyashan]> SELECT * FROM base WHERE 性别=‘男‘ LIMIT 3,2;

技术图片

列出表中前3条数据记录

MariaDB [xiangyashan]> SELECT * FROM base LIMIT 3;

技术图片

备份数据库资料

备份studb库,保存为/root/studb.sql文件

[root@svr7 ~]# mysqldump -uroot -pmima studb > /root/studb.sql

备份studb库和mysql库,保存为/root/studb.sql文件
[root@svr7 ~]# mysqldump -uroot -ppwd@123 --databases studb mysql > /root/studb+mysql.sql

备份所有库,保存为/root/alldb.sql文件

[root@svr7 ~]# mysqldump -uroot -pmima --all-databases > /root/alldb.sql

恢复数据库

确保已经为 studb 库做好备份文件 /root/studb.sql
[root@svr7 ~]# ls -lh /root/studb.sql
-rw-r--r--. 1 root root 11K 10月 24 20:20 /root/studb.sql

删除名为 studb 的库,检查结果
MariaDB [(none)]> DROP DATABASE studb;
Query OK, 9 rows affected (0.00 sec)

登入数据库服务器
[root@svr7 ~]# mysql -uroot -pmima

删除studb库
MariaDB [(none)]> DROP DATABASE studb;

重建名为 studb 的空库
MariaDB [(none)]> CREATE DATABASE studb;
MariaDB [(none)]> quit

若目标库studb已丢失,则必须提前建好空库
[root@svr7 ~]# mysql -uroot -ppwd@123 studb < /root/studb.sql

检查 studb 库中的表格数据
[root@svr7 ~]# mysql -uroot -pmima
MariaDB [(none)]> SELECT * FROM stuinfo;
MariaDB [(none)]> quit
Bye
[root@svr7 ~]#

相关知识拓展:
导入资料文件 xiangyashan.sql 的数据到 xiangyashan 库
1)确保数据中已存在名为xiangyashan的库
2)导入预先提供的数据库资料 xiangyashan.sql (软件素材目录下找)
[root@svr7 ~]# mysql -uroot -pmima xiangyashan < /root/xiangyashan.sql
这条命令的意思是
先登录数据库然后 将/root/xiangyashan.sql下的文件xiangyashan.sq导入数据库xiangyashan
文件需要自己进行上传,上传到相应的位置,
MariaDB [(none)]> SELECT FROM xiangyashan.stuinfo;检查导入结果

萌新浅谈LINUX下数据库 表记录增删改查 、 WHERE条件应用 、 数据备份与恢复

标签:roo   inux   from   order   目标   var   备份与恢复   ted   排列   

原文地址:https://blog.51cto.com/13594913/2426883

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有 京ICP备13008772号-2
迷上了代码!