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

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

首先登录数据库

查一下有什么库
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文件

[[email protected] ~]# mysqldump -uroot -pmima studb > /root/studb.sql

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

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

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

恢复数据库

确保已经为 studb 库做好备份文件 /root/studb.sql
[[email protected] ~]# 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)

登入数据库服务器
[[email protected] ~]# mysql -uroot -pmima

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

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

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

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

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

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

时间: 2024-10-13 02:32:03

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

萌新浅谈Linux系统数据库的基本操作(干货)

该技术讲解基于Linux centos 7 版本首先部署MariaDB服务器[]# yum -y install mariadb-server mariadb 安装 mariadb-server.mariadb 软件包[]# systemctl restart mariadb 启动数据库服务[]# systemctl status mariadb 查看服务状态[]# mysqladmin -uroot password '[email protected]' 将数据库管理用户 root 的密码设

ORM 实现数据库表的增删改查

这次通过反射技术来实现一下数据库表的增删改查对象关系映射(英语:Object Relational Mapping,简称ORM,或O/RM,或O/R mapping) 注:引用时约束了以下几点: 数据库表的表名与类的类名一致 数据库字段名和类字段名一致 自增字段的访问权限为private其余字段都为public 注:如果用的是MySql数据库,有提供好的MySqlhelper非MySql数据库可以参考我写好的SqlHelper SqlHelper参考位置:http://www.cnblogs.c

java-jdbc-mysql:实现数据库表的增删改查

以数据库test下数据表student(sno,sname,ssex,sage,sdept)为例: student表中的已有的所有记录: Java代码对表test.student的操作: 创建student类,包含String sno,String sname,String ssex,int sage,String sdept: 1 package jdbcTest; 2 3 public class Student { 4 private String sno,sname,ssex,sdept

语句创建数据库表及增删改查

TSQL语句:.sql结尾的文件是:ctrl +s 保存数据点击新建查询,代码创建数据库.创建数据库:create database 数据库名 .点击执行,完成创建.如果没有在数据库上右键刷新 go上面一句执行完了,执行下一句 删除数据库:drop database 数据库名 定位到数据库:use 数据库名或是可用数据库里定位 注释: 第一种:-- ,第二种:/*...*/注意:想执行哪一句,就选中哪一句,然后点击执行 创建数据表:create table 表名( Code(列名) nvarch

MongoDB 基础命令——数据库表的增删改查——遍历操作表中的记录

遍历更新数据表中的记录 /***添加 Order[订单表中 订单中商品ID与商品数量]productionDate 事例数据 [ { "productionId":100001,"count":10 } , { "productionId":100002,"count":9 } ]***/ db.order.find().forEach( function(item){ db.order.update({_id:item._i

IOS-sqlite3数据库: create table数据库表及对数据库表的增删改查(create/insert/delete)

1.步骤是: 先加入sqlite开发库libsqlite3.dylib, 新建或打开数据库, 创建数据表, 插入数据, 查询数据并打印 2.sqlite 的方法 sqlite3          *db, 数据库句柄,跟文件句柄FILE很类似 sqlite3_stmt *stmt, 这个相当于ODBC的Command对象,用于保存编译好的SQL语句 sqlite3_open(),    打开数据库,没有数据库时创建.sqlite3_exec(),    执行非查询的sql语句Sqlite3_st

表记录增删改查

案例1:INSERT插入表记录 案例2:UPDATE和DELETE 案例3:SELECT查询表记录 案例4:WHERE简单匹配 案例5:WHERE高级匹配 案例6:整理查询结果 案例7:备份数据库资料 案例8:恢复数据库 1 案例1:INSERT插入表记录1.1 问题 本例要求以前一章的studb库stuinfo表为基础,学会表格记录的多种不同插入方法,完成下列任务: 1)进入studb库,向 stuinfo表批量插入如图-1所示数据2)确认表格stuinfo的数据内容1.2 步骤 实现此案例需

Windows平台使用C语言在用户模式下注册表的增删改查

一.Wiodws注册表介绍 Windows操作系统提供了一个称为“注册表”的中心存储设施作为系统的配置和管理中心.应用程序和内核通过访问注册表来读写各种配置.Windows同时提供了一些API供应用程序访问注册表,这些API函数在接到注册表访问请求后会将他们转发给内核的系统服务.然后内核会做出相应的处理. Widows注册表是一个树状结构,每一个节点是一个键或值.键是一个容器,好比文件系统中的文件夹,值存储的是数据,相当于文件系统的文件,键可以包含其它的键(目录)或值(文件).注册表的根目录称为

Oracle 将 A 用户下所有表的增删改查 赋予 B 用户

第一步:创建用户 create user username identified by password; 第二步:给用户赋值接触锁定(仅仅赋予会话权限) grant create session to xxx; 第三步(登录所要访问表的用户(ytcj),执行如下语句,并把结果保存为sql文件): select 'GRANT ALL ON '||table_name||' to username;' from user_tables; 原文地址:https://www.cnblogs.com/l