首页 > 数据库 >mysql学习笔记2

mysql学习笔记2

时间:2024-09-24 09:36:07浏览次数:1  
标签:users 0.00 笔记 学习 sec mysql com example

书接上回,重新进入mysql,继续学习新内容。

1.进入mysql并新建数据库

sudo mysql -u root -p
create database test_database;
use test_database;
select database();

可以看到

mysql> select database();
+---------------+
| database()    |
+---------------+
| test_database |
+---------------+
1 row in set (0.00 sec)

2.表格

新建
mysql> create table users(
    -> id int auto_increment primary key,
    -> name varchar(100) not null,
    -> email varchar(100),
    -> age int);
Query OK, 0 rows affected (0.03 sec)
查看
mysql> select * from users;
Empty set (0.00 sec)

select查询关键字
*,表示选择表中的所有列
from指定来源关键字,后面跟的名字

给表users增加数据并查看
mysql> insert into users(name,email,age) values 
    -> ('张三','[email protected]',20),
    -> ('Zhangsan','[email protected]',25);
Query OK, 2 rows affected (0.01 sec)
Records: 2  Duplicates: 0  Warnings: 0
mysql> select * from users;
+----+----------+----------------------+------+
| id | name     | email                | age  |
+----+----------+----------------------+------+
|  1 | 张三     | [email protected] |   20 |
|  2 | Zhangsan | [email protected]       |   25 |
+----+----------+----------------------+------+
2 rows in set (0.00 sec)

可以看到两条数据添加完成。

继续插入数据
mysql> insert into users(name,email,age) values 
    -> ('李四','[email protected]',66);
Query OK, 1 row affected (0.00 sec)
mysql> select * from users;
+----+----------+----------------------+------+
| id | name     | email                | age  |
+----+----------+----------------------+------+
|  1 | 张三     | [email protected] |   20 |
|  2 | Zhangsan | [email protected]       |   25 |
|  3 | 李四     | [email protected]     |   66 |
+----+----------+----------------------+------+
3 rows in set (0.00 sec)
更新表中的数据

使用update+更新的表名+set+更改的元素名字=新数据+ where+需要更新的数据条件

update users set age = 88 where name = '张三';
Query OK, 1 row affected (0.00 sec)
Rows matched: 1  Changed: 1  Warnings: 0
mysql> select * from users;
+----+----------+----------------------+------+
| id | name     | email                | age  |
+----+----------+----------------------+------+
|  1 | 张三     | [email protected] |   88 |
|  2 | Zhangsan | [email protected]       |   25 |
|  3 | 李四     | [email protected]     |   66 |
+----+----------+----------------------+------+
3 rows in set (0.00 sec)

注意:此处如果出现多条数据都符合需要更新的数据条件,那么所有符合条件的数据都会被更新。

删除一条数据
mysql> delete from users where name = '张三';
Query OK, 1 row affected (0.01 sec)

mysql> select * from users;
+----+----------+------------------+------+
| id | name     | email            | age  |
+----+----------+------------------+------+
|  2 | Zhangsan | [email protected]   |   25 |
|  3 | 李四     | [email protected] |   66 |
+----+----------+------------------+------+
2 rows in set (0.00 sec)

delete操作也是按照where的条件进行数据删除,也会把所有符合条件的数据都删掉。

复制表格(方法一)
先新建一个相同结构的空表
mysql> create table new_users like users;
Query OK, 0 rows affected (0.03 sec)
mysql> select * from new_users;
Empty set (0.00 sec)
再把旧表内容插入新表
mysql> insert into new_users select * from users;
Query OK, 2 rows affected (0.00 sec)
Records: 2  Duplicates: 0  Warnings: 0

mysql> select * from new_users;
+----+----------+------------------+------+
| id | name     | email            | age  |
+----+----------+------------------+------+
|  2 | Zhangsan | [email protected]   |   25 |
|  3 | 李四     | [email protected] |   66 |
+----+----------+------------------+------+
2 rows in set (0.00 sec)
复制表格(方法二)

使用`create table ...

mysql> create table n_users as select * from users;
Query OK, 2 rows affected (0.03 sec)
Records: 2  Duplicates: 0  Warnings: 0

mysql> select * from n_users;
+----+----------+------------------+------+
| id | name     | email            | age  |
+----+----------+------------------+------+
|  2 | Zhangsan | [email protected]   |   25 |
|  3 | 李四     | [email protected] |   66 |
+----+----------+------------------+------+
2 rows in set (0.00 sec)
方法比较

方法二复制的表格没有保留原表格中id列的自增属性。
所以在增加数据后,id列不会自动编号。

mysql> insert into n_users(name,email,age) values('张三','[email protected]',22);
Query OK, 1 row affected (0.01 sec)

mysql> select * from n_users;
+----+----------+----------------------+------+
| id | name     | email                | age  |
+----+----------+----------------------+------+
|  2 | Zhangsan | [email protected]       |   25 |
|  3 | 李四     | [email protected]     |   66 |
|  0 | 张三     | [email protected] |   22 |
+----+----------+----------------------+------+
3 rows in set (0.00 sec)

mysql> insert into n_users(name,email,age) values('王五','[email protected]',23);
Query OK, 1 row affected (0.00 sec)

mysql> select * from n_users;
+----+----------+----------------------+------+
| id | name     | email                | age  |
+----+----------+----------------------+------+
|  2 | Zhangsan | [email protected]       |   25 |
|  3 | 李四     | [email protected]     |   66 |
|  0 | 张三     | [email protected] |   22 |
|  0 | 王五     | [email protected]       |   23 |
+----+----------+----------------------+------+
4 rows in set (0.00 sec)

方法一是可以自增

mysql> insert into new_users(name,email,age) values('王五','[email protected]',23);

Query OK, 1 row affected (0.00 sec)

mysql> select * from new_users;
+----+----------+------------------+------+
| id | name     | email            | age  |
+----+----------+------------------+------+
|  2 | Zhangsan | [email protected]   |   25 |
|  3 | 李四     | [email protected] |   66 |
|  4 | 王五     | [email protected]   |   23 |
+----+----------+------------------+------+
3 rows in set (0.00 sec)
查看数据库中的表
mysql> show tables;
+-------------------------+
| Tables_in_test_database |
+-------------------------+
| n_users                 |
| new_users               |
| users                   |
+-------------------------+
3 rows in set (0.00 sec)
删除表

使用drop table删除表

mysql> drop table n_users;
Query OK, 0 rows affected (0.02 sec)

mysql> show tables;
+-------------------------+
| Tables_in_test_database |
+-------------------------+
| new_users               |
| users                   |
+-------------------------+
2 rows in set (0.00 sec)

标签:users,0.00,笔记,学习,sec,mysql,com,example
From: https://www.cnblogs.com/PrepAndPonder/p/18428390

相关文章

  • 从零开始学机器学习——什么是机器学习
    这个系列的文章旨在为初学者提供机器学习知识,避免使用专业术语和复杂的概念,以便更好地理解和应用。首先给大家介绍一个很好用的学习地址:https://cloudstudio.net/columns机器学习在这里简要介绍机器学习:它利用真实世界或生成的数据,自动发现其中的规律和模式,从而实现对未来情况......
  • js DOM学习的综合样例
    jsDOM学习的综合样例本人简单学习了一点md语法,写出来的博客会更好看喵.样例介绍主要实现利用DOM的获取标签对象的功能和对监听功能实现三个功能:(1)开灯,关灯(2)对标签进行全选,反选(3)对文本框聚焦时字母为大写,反之为小写基本实现方法(1)开灯关灯:a.......
  • MySQL主从复制中启用GTID(全局事务标识符)模式
    在MySQL中启用GTID(全局事务标识符)模式进行主从复制涉及几个步骤。GTID为每个事务赋予一个唯一的标识符,从而简化了复制过程和故障恢复。以下是启用GTID模式的基本步骤:首先确保两台数据库目前数据保持一致1.准备工作确保您使用的MySQL版本支持GTID。GTID从MySQL5.6版本开始支持......
  • 无法使用我的 pip 安装 mysql-connector
    我正在尝试使用pip安装mysql连接器,但它一直向我显示此错误:连接被'ProxyError('无法连接到代理。',TimeoutError('timedout'))':/simple/mysqlx-connector/|中断||我认为这可能是我所在地区过滤的结果因为我是初学者,不知道如何解决问题或问题是什么。有人可以帮我吗?......
  • jni安全利用的简单学习
    首先定义一个最简单的类publicclassEvilClass{publicstaticnativeStringexecCmd(Stringcmd);}因为我是MacOs端,在当前目录执行javacEvilClass.javajavac-h.EvilClass.java生成EvilClass.h文件/*DONOTEDITTHISFILE-itismachinegenerated*/#i......
  • MySQL 5.7 Command Line Client 闪屏退出
    MySQL5.7CommandLineClient 闪屏退出 解释:MySQL5.7CommandLineClient闪屏退出可能是因为缺少某些环境变量配置,或者是MySQL安装过程中出现了问题。解决方法:   检查环境变量:确保PATH环境变量中包含了MySQL的bin目录路径。在Windows系统中,可以在系统属性的“高级”......
  • 【自学笔记】支持向量机(3)——软间隔
    引入  上一回解决了SVM在曲线边界的上的使用,使得非线性数据集也能得到正确的分类。然而,对于一个大数据集来说,极有可能大体呈线性分类趋势,但是边界处混杂,若仍采用原来的方式,会得到极其复杂的超平面边界,浪费了算力。  上述要求所有训练样本满足约束的分类方式称为硬分类......
  • C++学习笔记(三)-----【内联函数】
    1内联函数1.1为什么要有内联函数答:还是为了补C语言的坑,补宏的坑#defineN10//实现一个ADD的宏函数//错误写法#defineADD(intx,inty){returnx+y;}#defineADD(x,y){returnx+y;}#defineADD(x,y)returnx+y;#defineADD(x,y)x+y;//宏不需......
  • “MySQL 查询反馈全解析:揭开消息、摘要、状态、结果及警告(错误)的神秘面纱”(详细)
    在MySQL中,当您运行查询时,通常会显示几个主要的标签或部分。这些部分通常包括消息(Message)、摘要(Summary)、状态(Status)、结果(Results)以及警告或错误(Warnings/Errors)。以下是这些部分的详细解释:消息(Message):这是一个简要的反馈区,显示查询执行的结果信息。如果查询执行成功......
  • navicat无法连接远程mysql数据库1130报错的解决方法
    出现报错:1130-Host'ipaddress'isnotallowedtoconnecttothisMySQLservenavicat,当前ip不允许连接到这个MySQL服务解决当前ip无法连接远程mysql的方法1.查看mysql端口,并在服务器安全组中放开相应入方向端口后重启服务器sudonetstat-tulnp|grepmysql查看端......