mysql练习(增删改查)char、int使用

(4)char的存储方式是,对英文字符(ASCII)占用1个字节,对一个汉字占用两个字节;而varchar的存储方式是,对每个英文字符占用2个字节,汉字也占用2个字节,两者的存储数据都非unicode的字符数据。

增:create database 库名;

删表或表内容:drop  table 表名;         delete from 表名 where 主键 = " 具体值";

删库:drop  database 库名;         

查:select * from 表名;

改:update 表名set 表内某个值=300 where 主键='具体值';  

1:创建一个水费表单其中包括月份、用电率、费用

MariaDB [mysql]> create database shuifei;           #创建shuifei数据库
Query OK, 1 row affected (0.00 sec)

MariaDB [mysql]> use shuifei;                                #进入水费数据库      
Database changed

MariaDB [shuifei]> create table shuifei_info(月份 char(8) not null,用电率 int(3) not null,费用 int(3) not null,primary key(月份));     #创建数据表注意char、int使用
Query OK, 0 rows affected (0.01 sec)

MariaDB [shuifei]> desc shuifei_info;                #查看表结构
+-----------+---------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-----------+---------+------+-----+---------+-------+
| 月份 | char(8) | NO | PRI | NULL | |
| 用电率 | int(3) | NO | | NULL | |
| 费用 | int(3) | NO | | NULL | |
+-----------+---------+------+-----+---------+-------+
3 rows in set (0.00 sec)

MariaDB [shuifei]> insert into shuifei_info(月份,用电率,费用) values("十月份",100,45);                #插入数据
Query OK, 1 row affected (0.00 sec)

MariaDB [shuifei]> insert into shuifei_info values("十一月份",160,79);
Query OK, 1 row affected (0.00 sec)

MariaDB [shuifei]> select * from shuifei_info;              #查看表内容
+--------------+-----------+--------+
| 月份 | 用电率 | 费用 |
+--------------+-----------+--------+
| 十一月份 | 160 | 79 |
| 十月份 | 100 | 45 |
+--------------+-----------+--------+
2 rows in set (0.01 sec)

MariaDB [shuifei]> update shuifei_info set 用电率=300 where 月份='十月份';         #更新十月份用电情况

MariaDB [shuifei]> update shuifei_info set 费用=180 where 月份='十月份';
Query OK, 1 row affected (0.00 sec)
Rows matched: 1 Changed: 1 Warnings: 0

MariaDB [shuifei]> select * from shuifei_info;
+--------------+-----------+--------+
| 月份 | 用电率 | 费用 |
+--------------+-----------+--------+
| 十一月份 | 160 | 79 |
| 十月份 | 300 | 180 |
+--------------+-----------+--------+
2 rows in set (0.00 sec)


Query OK, 1 row affected (0.00 sec)
Rows matched: 1 Changed: 1 Warnings: 0

2:创建一个学院名单包括姓名、年龄、总成绩

MariaDB [mysql]> create database 学员名单;
Query OK, 1 row affected (0.00 sec)

MariaDB [mysql]> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| 学员名单 |
| auth |
| mydb |
| mysql |
| performance_schema |
| shuifei |
| test |
| yg |
+--------------------+
9 rows in set (0.00 sec)

MariaDB [mysql]> use 学员名单;
Database changed
MariaDB [学员名单]> show tables;
Empty set (0.00 sec)

MariaDB [学员名单]> create table mingdanbiao(姓名 char(10) not null,年龄 char(3) not null,总成绩 char(255) not null,primary key(姓名));
Query OK, 0 rows affected (0.00 sec)

MariaDB [学员名单]> desc mingdanbiao;
+-----------+-----------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-----------+-----------+------+-----+---------+-------+
| 姓名 | char(10) | NO | PRI | NULL | |
| 年龄 | char(3) | NO | | NULL | |
| 总成绩 | char(255) | NO | | NULL | |
+-----------+-----------+------+-----+---------+-------+
3 rows in set (0.00 sec)

MariaDB [学员名单]> insert into mingdanbiao (姓名,年龄,总成绩)values('王亮',20,99);
Query OK, 1 row affected (0.00 sec)

MariaDB [学员名单]> select * from mingdanbiao;
+--------+--------+-----------+
| 姓名   | 年龄   | 总成绩  |
+--------+--------+-----------+
| 王亮   | 20      | 99         |
+--------+--------+-----------+
1 row in set (0.00 sec)

 3:根据下表需求做一个数据库并且备份client.user_info表,模拟数据丢失恢复数据:

第一步:做数据库完成数据搭建

MariaDB [shuifei]> create database client;            #创建client库
Query OK, 1 row affected (0.00 sec)

MariaDB [shuifei]> use client;                                 #进入client库内
Database changed

MariaDB [client]> create table user_info(身份证 char(20) not null,姓名 char(20) not null,性别 char(2),用户ID号 int(110),资费 int(10));                 #创建user_info表
Query OK, 0 rows affected (0.07 sec)

MariaDB [client]> show tables;                               #查看表
+------------------+
| Tables_in_client |
+------------------+
| user_info |
+------------------+
1 row in set (0.00 sec)

MariaDB [client]> desc user_info;                          #查看数据表结构
+-------------+----------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------------+----------+------+-----+---------+-------+
| 身份证 | char(20) | NO | | NULL | |
| 姓名 | char(20) | NO | | NULL | |
| 性别 | char(2) | YES | | NULL | |
| 用户ID号 | int(110) | YES | | NULL | |
| 资费 | int(10) | YES | | NULL | |
+-------------+----------+------+-----+---------+-------+
5 rows in set (0.00 sec)

MariaDB [client]> insert into user_info(身份证,姓名,性别,用户ID号,资费) values(00000000001,'孙悟空','男',01,100);                                                            #向表中插入数据
Query OK, 1 row affected (0.00 sec)

MariaDB [client]> select * from user_info;                 #显示数据表内容
+-----------+-----------+--------+-------------+--------+
| 身份证 | 姓名 | 性别 | 用户ID号 | 资费 |
+-----------+-----------+--------+-------------+--------+
| 1 | 孙悟空 | 男 | 1 | 100 |
+-----------+-----------+--------+-------------+--------+
1 row in set (0.00 sec)

MariaDB [client]> insert into user_info values(00000000002,'蓝凌','女',02,150);
Query OK, 1 row affected (0.00 sec)

MariaDB [client]> insert into user_info values(00000000003,'姜纹','女',03,90);
Query OK, 1 row affected (0.01 sec)

MariaDB [client]> insert into user_info values(00000000004,'关园','男',04,590);
Query OK, 1 row affected (0.00 sec)

MariaDB [client]> insert into user_info values(00000000005,'罗中昆','男',05,390);
Query OK, 1 row affected (0.00 sec)

MariaDB [client]> select * from user_info;
+-----------+-----------+--------+-------------+--------+
| 身份证 | 姓名 | 性别 | 用户ID号 | 资费 |
+-----------+-----------+--------+-------------+--------+
| 1         | 孙悟空 | 男 | 1              | 100 |
| 2         | 蓝凌 | 女    | 2               | 150 |
| 3         | 姜纹 | 女    | 3               | 90   |
| 4         | 关园 | 男    | 4               | 590 |
| 5         | 罗中昆 | 男 | 5              |390  |
+-----------+-----------+--------+-------------+--------+
5 rows in set (0.00 sec)

第二步:完整备份client.user_info表:

[root@localhost ~]# mysqldump -uroot -p123123 -d client user_info > backup/client.user_info-$(date +%Y%m%d).sql
[root@localhost ~]# cd backup/
[root@localhost backup]# ls
client.user_info-20191014.sql     mysql_all.20191014.sql         shuifei-20191014.sql    yg-20191014.sql
desc-20191014.sql                     mysql_all-2019-10-14.tar.xz   shuifei+mydb-20191014.sql

第三步:模拟数据库丢失恢复数据:

MariaDB [client]> drop database client;
Query OK, 1 row affected (0.00 sec)

MariaDB [(none)]> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| auth |
| mydb |
| mysql |
| performance_schema |
| shuifei |
| test |
| var |
| yg |
+--------------------+
9 rows in set (0.00 sec)

MariaDB [(none)]> create database client;
Query OK, 1 row affected (0.00 sec)

MariaDB [(none)]> use client;
Database changed
MariaDB [client]> source backup/client.user_info.20191024.sql

MariaDB [client]> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| auth |
| client |
| mydb |
| mysql |
| performance_schema |
| shuifei |
| test |
| var |
| yg |
+--------------------+
10 rows in set (0.00 sec)

原文地址:https://www.cnblogs.com/CMX_Shmily/p/11671434.html