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、/*...*/
  • 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;

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

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

3.table 表的操作

3.1.查看表结构

desc table
	
DESCRIBE 表名;

3.2.查看表的内容

select * from table_name

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

3.3.建立表

CREATE TABLE 表名 (
		属性名 数据类型 [完整约束条件],
		属性名 数据类型 [完整约束条件],
		...
		...
		属性名 数据类型 [完整约束条件]
	);
  • 字段名就是属性名
  • 完整的建立表的语句
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)
  • if not exists表示当相同的表名存在时,则不执行此创建语句,避免语句执行错误
create database if not exists [table];      
ENGINE=InnoDB DEFAULT CHARSET=utf8;
ENGINE 设置表的引擎 和默认的字符类型
  • 常见的数据库引擎

  • InnoDB myisam

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

  • 在这里插入图片描述

  • UNSIGNED无符号数

3.4.约束条件

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

3.5.修改表的操作

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

4.数据的增删改

  • 为表中所有字段添加数据
语法:INSERT INTO 表名(字段名1,字段名2,…)VALUES(值1,值2,…);

mysql> insert into users (id,username,password)values(1,'moon','123456');

4.1.增

  • 语法:INSERT INTO 表名 VALUES(值11,值2,…);
mysql> insert into users values(null,'test','123456');
  • 语法: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');

在这里插入图片描述

4.2.删

DELETE FROM 表名 [WHERE 条件表达式

delete from users where id=1;

在这里插入图片描述

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

4.3.更新

语法:UPDATE 表名 SET 字段名1=值1,[ ,字段名2=值2,…][ WHERE 条件表达式 ]
update users set  password='aaaa' where id=1;
update users set  password='123456',username='moon' where id=1
update users set  password=456789;
  • 在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值