• WEB安全之数据库mysql(一):Mysql数据库的基本操作、table表的操作、数据的增删改


    1.数据库的基本操作

    1.1.MYSQL登录与退出

    D:\phpStudy\MySQL\bin
    输入 mysql -uroot -p -P3306 -h127.0.0.1
    退出的三种方法
    mysql > exit;
    mysql > quit;
    mysql > \q;

    • 在命令行下登陆
    • 打开Php study来到软件管理页面下载HeidiSQL11.0
      在这里插入图片描述
    • 进行管理配置
      在这里插入图片描述
      在这里插入图片描述
    • 来到设置,打开MySQL文件位置
      在这里插入图片描述
    • 复制bin的绝对路径
      在这里插入图片描述
    • -u用户,-p密码,-h127.0.0.1本地登陆
      在这里插入图片描述
    • 退出
      在这里插入图片描述
      在这里插入图片描述
      在这里插入图片描述

    1.2.MYSQL数据库的一些解释

    • 注意:数据库就相当于文件夹
      表就相当于文件
    • 看当前mysql里面有多少个数据库
      在这里插入图片描述

    1.3.mysql注释符有三种

    1、#...
    2、"--  ..."
    3、/*...*/
    
    • 1
    • 2
    • 3
    • use 选择数据库
    • show tables 查看当前库里面所有的表
      在这里插入图片描述
      在这里插入图片描述
    • 在这里插入图片描述
      在这里插入图片描述
      在这里插入图片描述
      在这里插入图片描述

    2.数据库的一些基本操作

    2.1.数据库的增删改查(sql语句)

    • 增:create database db1;
      删:drop database db1;
      改:alter database db1 charset utf8
      查:show databases;#查看所有的数据库
    show create database db1;
    查看指定的数据库	
    设置默认的utf8,在配置文件中:写上character_set_server = utf8
    use db2   
    select database() #查看你当前在哪个文件夹
    
    重命名数据库 RENAME database olddbname TO newdbname
    
    show status; -- 显示一些系统特定资源的信息,例如,正在运行的线程数量。 
    
    desc tabl_name; 显示表结构,字段类型,主键,是否为空等属性,但不显示外键。
    
    show databases 查看这个mysql里面有多少个库
    
    use mysql 
    
    use 选择数据库
    
    show tables 查看当前库里面所有的表
    
    mysql> select password from user where user='root';
    
    Mysql 5.7 select authentication_string,user from mysql.user;
    
    查看当前数据库 里面的表user 用户为root的密码
    
    
    alter database 数据库名 character set utf8;
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    • 设置默认的utf8,在配置文件中
      在这里插入图片描述
      在这里插入图片描述
    • 报错解决
      在这里插入图片描述
      在这里插入图片描述
    • 报错解决,超时时间设置一分钟
      链接: 报错解决
      在这里插入图片描述

    3.table 表的操作

    3.1.查看表结构

    desc table
    	
    DESCRIBE 表名;
    
    • 1
    • 2
    • 3

    3.2.查看表的内容

    select * from table_name
    
    • 1

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    3.3.建立表

    CREATE TABLE 表名 (
    		属性名 数据类型 [完整约束条件],
    		属性名 数据类型 [完整约束条件],
    		...
    		...
    		属性名 数据类型 [完整约束条件]
    	);
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 字段名就是属性名
    • 完整的建立表的语句
    create table users(id int(7) AUTO_INCREMENT,
    						username varchar(100) not null,
    						password varchar(100) not null,
    						PRIMARY KEY(id)
    						)ENGINE=InnoDB DEFAULT CHARSET=utf8;
    	
    mysql> create table users(id int(7) UNSIGNED auto_increment,username varchar(30) not null,password varchar(32) not null,email varchar(40),primary key (id))engine=myisam default charset=utf8;
    Query OK, 0 rows affected (0.00 sec)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • if not exists表示当相同的表名存在时,则不执行此创建语句,避免语句执行错误
    create database if not exists [table];      
    
    • 1
    ENGINE=InnoDB DEFAULT CHARSET=utf8;
    ENGINE 设置表的引擎 和默认的字符类型
    
    • 1
    • 2
    • 常见的数据库引擎

    • InnoDB myisam

    • 数据类型
      链接: 数据类型

    • 在这里插入图片描述

    • UNSIGNED无符号数

    3.4.约束条件

    • PRIMARY KEY 标识该属性为该表的主键,可以唯一的标识对应的元组
      FOREIGN KEY 标识该属性为该表的外键,是与之联系某表的主键
      NOT NULL 标识该属性不能为空
      UNIQUE 标识该属性的值是唯一的
      AUTO_INCREMENT 标识该属性的值是自动增加,这是MySQL的SQL语句的特色
      DEFAULT 为该属性设置默认值

    3.5.修改表的操作

    • 修改表
    格式:ALTER TABLE 旧表名 RENAME 新表名;
    
    • 1
    • 修改字段的数据类型
    ALTER TABLE 表名 MODIFY 属性名 数据类型;
    
    • 1
    • 修改字段名:
    ALTER TABLE 表名 CHANGE 旧属性名 新属性名 新数据类型;
    
    • 1
    • 增加字段名
    ALTER TABLE 表名 ADD 属性名1 数据类型 [完整性约束条件] [FIRST | AFTER 属性名2];
    
    • 1
    • 删除字段
    ALTER TABLE 表名 DROP 属性名;
    
    • 1
    • 更改表的存储引擎
    格式:ALTER TABLE 表名 ENGINE = 存储引擎名;
    
    • 1
    • 修改表名在这里插入图片描述
      在这里插入图片描述
    • 修改字段的数据类型
      在这里插入图片描述
      在这里插入图片描述
      在这里插入图片描述
      在这里插入图片描述
    • 修改字段名
    • 字段名就是属性名
    • 增加字段名
      在这里插入图片描述
    • 在这里插入图片描述
    • 删除address,再将其添加为第一个
      在这里插入图片描述
    • 更换数据库引擎
      在这里插入图片描述

    4.数据的增删改

    • 为表中所有字段添加数据
    语法:INSERT INTO 表名(字段名1,字段名2,…)VALUES(值1,值2,…);
    
    mysql> insert into users (id,username,password)values(1,'moon','123456');
    
    • 1
    • 2
    • 3

    4.1.增

    • 语法:INSERT INTO 表名 VALUES(值11,值2,…);
    mysql> insert into users values(null,'test','123456');
    
    • 1
    • 语法:INSERT INTO 表名(字段1,字段2,…)VALUES(值1,值2,…)
      语法:INSERT INTO 表名 SET 字段名1=值1[,字段名2=值2,…]
      举例:INSERT INTO student SET id=4,name=‘zhaoliu’,grade=72;
      在这里插入图片描述
    • Id号自增(mysql特色)
      在这里插入图片描述
    • 同时添加多条数据
      语法:INSERT INTO 表名[(字段名1,字段名2,…)]VALUES (值1,值2,…),(值1,值2,…),
    mysql> insert into users (id,username,password)values(null,'moon','123456'),(null,'alex','123456');
    
    :INSERT INTO 表名[(字段名1,字段名2,…)]VALUES (值1,值2,…),(值1,值2,…),(值1,值2,…)
    
    mysql> insert into users values(null,'moon1','123456'),(null,'alex1','123456');
    
    • 1
    • 2
    • 3
    • 4
    • 5

    在这里插入图片描述

    4.2.删

    DELETE FROM 表名 [WHERE 条件表达式
    
    delete from users where id=1;
    
    • 1
    • 2
    • 3

    在这里插入图片描述

    • 删除全部数据
    • 若 DELETE 语句中没有使用WHERE语句,则会将表中所有记录都删除。
      DELETE FROM 表名
    • 删除全部数据的另一种方法——TRUNCATE

    4.3.更新

    语法:UPDATE 表名 SET 字段名1=值1,[ ,字段名2=值2,…][ WHERE 条件表达式 ]
    
    • 1
    update users set  password='aaaa' where id=1;
    update users set  password='123456',username='moon' where id=1
    update users set  password=456789;
    
    • 1
    • 2
    • 3
    • 在这里插入图片描述
      在这里插入图片描述
      在这里插入图片描述
  • 相关阅读:
    【Nacos篇】Nacos基本操作及配置
    供应链安全体系建设方案
    Jira使用教程-不古出品
    RPA对财务报表的影响
    安全可靠的文件传输服务助力完成更高效的医疗保健工作(下)
    docker openjdk:8-jdk-alpine 修改时区、添加字体
    海格里斯HEGERLS托盘搬运机器人四向车引领三维空间集群设备柔性运维
    java计算机毕业设计水质监测数据采集系统源码+系统+数据库+lw文档+mybatis+运行部署
    BFS 之Flood Fill 算法(二)
    VGG网络
  • 原文地址:https://blog.csdn.net/weixin_44891093/article/details/127428931