-
2021-04-07 21:18:46
删除数据
语法
delete from 表名 where 条件
删除所有数据
delete from t_user ;
根据条件删除
删除学号为1学生数据
delete from t_user where id = 1 ;
删除名字为ww学生数据
delete from t_user where name = ‘ww’ ;
truncate 删除
删除所有数据
truncate table t_user;
truncate与delete 删除的区别(面试题)
Delete:一行一行的把数据删除
Truncate:先删除表(drop),重新创建(create)表mysql技巧*
(1)sql语句以“;”为结束符
(2)键盘上下键可以切换上次的输入
(3)默认不区分大小写 可以通过mysql配置,区分大小写
(4)如果字段多个单词 一般用_分割更多相关内容 -
MySQL数据库基本操作语句
2022-01-18 22:21:48mysql数据库操作语句 可有可无的代码:[代码] 一、进入数据库方法 命令:mysql -u 用户名 -p 密码 二、库操作 1、查看所有数据库:show databases 1、导入数据库:mysql -u username -p < sql文件路径; 或...mysql数据库操作语句
可有可无的代码:[代码]
一、进入数据库方法
命令:mysql -u 用户名 -p 密码
二、库操作
1、查看所有数据库:show databases
1、导入数据库:mysql -u username -p < sql文件路径; 或进入mysql,执行source sql文件路径 2、导出数据库:mysqldump -u root -p dvwa > aa.sql -p后面密码不写
1、创建 create 1、创建数据库:create database if not exists 数据库名 [default charset utf8]; 2、删除数据库:drop database 数据库名; 3、进入数据库:use 数据库名;
三、表操作
增:insert into 表名 values() 插入完整行:insert into stu values( , , ,); 只插入一行的部分列数据:insert into stu(name,age) values(a,1),(b,2);
删:delete from 表名 [where 条件]
查:select 列名1,列名2 from 表名 [where 条件] [order by] [limit 初始位置,个数]; 查全部列的内容:select * from 表名 [where 条件] [order by] [limit 初始位置,个数];
-
进阶语法:
1、where 指定条件
2、order by 排序 asc升序 desc降序
3、limit 4,表示输出条目;limit 2,4 表示从第三行开始输出四条
4、模糊匹配 like
5、联合查询 union 拼接多个select语句,但是前后的select语句查询的列数必须一致
6、反引号 `` 去除关键字的特殊性 -
模糊查询
所查条件中含value:select * from 表名 where 列名 like ‘%value%’;
所查条件为value:select * from 表名 where 列名 like ‘value’; -
联合查询
select 列名 from 表1 union select 列名 from 表2;
前后查询的结果列数必须一致联合查询例子:
改:update 表名 set 数据; update stu set name='李四',age=100;
导入数据:mysql -u username -p password 表名 < data.sql; 导出数据:mysql -u username -p password 表名 > data.sql;
查看表中各列属性:desc 表名; 数据库数据类型: 数值型:int float ... 时间:date 字符型:char varchar
四、函数
-
数据常用函数
-
无参数型
-
有参数型
-
报错注入用
-
举例
select count(*) from redhatdb.payments where amount>10000;
select group_concat(user,’!~~~~~~~~~’,PASSWORD) from dvwa.users;
select ascii(‘i’);
select RIGHT(‘helloworld’,6);
select floor(0.85);
insert into stu(count,floor(rand(0)*2)) values( 1,1);
select floor(rand(0)2) from dvwa.users;
一种报错注入语句:select count(),floor(rand(0)*2) from dvwa.users group by floor(rand(0)*2);
-
-
-
-
常用的Mysql数据库操作语句大全整理
2021-01-19 11:07:238、delete (从表中删除一行或多行) delete from table_name [where ......] 9、drop(永久删除数据库及对象,如视图、索引等) drop datebase | index | procedure | table | trigger | user | view name 10、insert ...一、用户管理:
1、新建用户:
>create user name identified by 'ssapdrow';
2、更改密码:
>set password for name=password('fdddfd');
3、权限管理
>show grants for name; //查看name用户权限
> grant select on db_name.* to name; //给name用户db_name的所有权限
> revoke select on db_name.* to name; //grant的反操作,去除权限;
二、数据库操作:
1、查看数据库:
>show databases;
2、创建数据库:
>create database db_name; //db_name为数据库名
3、使用数据库:
>use db_name;
4、删除数据库:
>drop database db_name;
三、创建表:
1、创建表:
>create table table_name(
> id tinyint unsigned not null auto_increment, //id值,无符号、非空、递增——唯一性,可做主键。
> name varchar(60) not null
> score tinyint unsigned not null default 0, //设置默认列值
> primary key(id)
> )engine=innodb //设置表的存储引擎,一般常用innodb和myisam;innodb可靠,支持事务;myisam高效不支持全文检索
> default charset=utf8; //设置默认的编码,防止数据库中文乱码
如果有条件的创建数据表还可以使用
>create table if not exists tb_name(........
2、复制表:
>create table tb_name2 select * from tb_name;
或者部分复制:
>create table tb_name2 select id,name from tb_name;
3、创建临时表:
>create temporary table tb_name(这里和创建普通表一样);
4、查看数据库中可用的表:
>show tables;
5、查看表的结构:
>describe tb_name;
也可以使用:
>show columns in tb_name; //from也可以
6、删除表:
>drop [ temporary ] table [ if exists ] tb_name[ ,tb_name2.......];
实例:
>drop table if exists tb_name;
7、表重命名:
>rename table name_old to name_new;
还可以使用:
>alter table name_old rename name_new;
四、修改表:
1、更改表结构:
>alter table tb_name add[change,rename,drop] ...要更改的内容...
实例:
>alter table tb_name add column address varchar(80) not null;
> alter table tb_name drop address;
> alter table tb_name change score score smallint(4) not null;
五、插入数据:
1、插入数据:
>insert into tb_name(id,name,score)values(null,'张三',140),(null,'张四',178),(null,'张五',134);
这里的插入多条数据直接在后边加上逗号,直接写入插入的数据即可;主键id是自增的列,可以不用写。
2、插入检索出来的数据:
>insert into tb_name(name,score) select name,score from tb_name2;
六、更新数据:
1、指定更新数据:
>update tb_name set score=189 where id=2;
> update tablename set columnname=newvalue [ where condition ]
七、删除数据:
1、删除数据:
>delete from tb_name where id=3;
八、条件控制:
1、where 语句:
>select * from tb_name where id=3;
2、having 语句:
>select * from tb_name group by score having count(*)>2
3、相关条件控制符:
=、>、、in(1,2,3......)、between a and b、not
and 、or
like()用法中 % 为匹配任意、 _ 匹配一个字符(可以是汉字)
is null 空值检测
九、mysql的正则表达式:
1、mysql支持regexp的正则表达式:
>select * from tb_name where name regexp '^[a-d]' //找出以a-d 为开头的name
2、特殊字符需要转义。
十、mysql的一些函数:
1、字符串链接——concat()
>select concat(name,'=>',score) from tb_name
2、数学函数:
avg、sum、max、min、count;
3、文本处理函数:
trim、locate、upper、lower、substring
4、运算符:
+、-、*、
5、时间函数:
date()、curtime()、day()、year()、now().....
十一、分组查询:
1、分组查询可以按照指定的列进行分组:
>select count(*) from tb_name group by score having count(*)>1;
2、条件使用having;
3、order by 排序:
order by desc|asc =>按数据的降序和升序排列
十二、union规则——可以执行两个语句(可以去除重复行)
十三、全文检索——match和against
1、select match(note_text)against('picaso') from tb_name;
2、innodb引擎不支持全文检索,myisam可以;
十四、视图
1、创建视图
>create view name as select * from tb_name where ~~ order by ~~;
2、视图的特殊作用:
a、简化表之间的联结(把联结写在select中);
b、重新格式化输出检索的数据(trim,concat等函数);
c、过滤不想要的数据(select部分)
d、使用视图计算字段值,如汇总这样的值。
十五、使用存储过程:
个人理解,存储过程就是一个自定义函数,有局部变量参数,可传入参数,可以返回值,不过这语法够呆滞的~~~
1、创建存储过程:
>create procedure pro(
> in num int,out total int)
> begin
> select sum(score) into total from tb_name where id=num;
> end;
***这里的 in (传递一个值给存储过程),out(从存储过程传出一个值),inout(对存储过程传入、传出),into(保存变量)
2、调用存储过程:
>call pro(13,@total) //这里的存储过程两个变量,一个是in一个是out,这里的out也是需要写上的,不写会出错
> select @total //这里就可以看到结果了;
3、存储过程的其他操作:
>show procedure status; //显示当期的存储过程
> drop procedure pro; //删除指定存储过程
十六、使用游标:
对这个理解不是很懂,朋友多多指点哦~~~
1、游标的操作
>create procedure pro()
> begin
> declare ordername cursor for
> select order_num from orders;
> end;
> open ordername; //打开游标
> close ordername; //关闭游标
十七、触发器:
触发器是指在进行某项指定操作时,触发触发器内指定的操作;
1、支持触发器的语句有delete、insert、update,其他均不支持
2、创建触发器:
>create trigger trig after insert on orders for each row select new.orser_name;
> insert语句,触发语句,返回一个值
3、删除触发器
>drop trigger trig;
十八、语法整理:
1、alter table(修改表)
alter table table_name
( add column datatype [ null | not null ] [ constraints ]
change column datatype columns [ null | not null ] [ constraints ]
drop column,
。。。。
)
2、commit(处理事务)
>commit;
3、create index(在一个或多个列上创建索引)
create index index_name on tb_name (column [ asc | desc ] , .......);
4、create procedure (创建存储过程)
create procedure pro([ parameters ])
begin
........
end
5、create table(创建表)
create table tb_name(
column_name datetype [ null | not null ] [ condtraints] ,
column_name datetype [ null | not null ] [ condtraints] ,
.......
primary key( column_name )
)engine=[ innodb | myisam ]default charset=utf8 auto_increment=1 ;
6、create user(创建用户)
create user user_name [ @hostname ] [ identified by [ password ] 'pass_word' ];
7、create view (在一个或多个表上创建视图)
create [ or replace ] view view_name as select。。。。。。
8、delete (从表中删除一行或多行)
delete from table_name [where ......]
9、drop(永久删除数据库及对象,如视图、索引等)
drop datebase | index | procedure | table | trigger | user | view name
10、insert (给表添加行)
insert into tb_name [ ( columns,...... ) ] values(value1,............);
使用select值插入:
insert into tb_name [ ( columns,...... ) ]
select columns , ....... from tb_name [ where ...... ] ;
11、rollback(撤销一个事务处理块)
rollback [ to savapointname ];
12、savepoint(为rollback设置保留点)
savepoint sp1;
13、select (检索数据,显示信息)
select column_name,.....from tb_name [ where ] [ union ] [ rroup by ] [ having ] [ order by ]
14、start transaction (一个新的事务处理块的开始)
start transaction
15、update(更新一个表中的一行或多行)
update tb_name set column=value,......[ where ]
如您对本文有疑问或者有任何想说的,请点击进行留言回复,万千网友为您解惑!
-
MySQL数据删除语句
2021-10-04 00:08:13MySQL数据删除语句 在 MySQL中,可以使用 DELETE 语句来删除表的一行或者多行数据。 基础语法 删除单个表中的数据 使用 DELETE 语句从单个表中删除数据,语法格式为: DELETE FROM <表名> [WHERE 子句] [ORDER...MySQL数据删除语句 在 MySQL中,可以使用 DELETE 语句来删除表的一行或者多行数据。
基础语法
删除单个表中的数据
使用 DELETE 语句从单个表中删除数据,语法格式为:
DELETE FROM <表名> [WHERE 子句] [ORDER BY 子句] [LIMIT 子句]
语法说明如下:
<表名>
:指定要删除数据的表名。ORDER BY
子句:可选项。表示删除时,表中各行将按照子句中指定的顺序进行删除。WHERE
子句:可选项。表示为删除操作限定删除条件,若省略该子句,则代表删除该表中的所有行。LIMIT
子句:可选项。用于告知服务器在控制命令被返回到客户端前被删除行的最大值。
注意:在不使用 WHERE 条件的时候,将删除所有数据。
根据条件删除表中的数据
【实例 2】在 tb_courses_new 表中,删除 course_id 为 4 的记录,输入的 SQL 语句和执行结果如下所示。
mysql> DELETE FROM tb_courses -> WHERE course_id=4; Query OK, 1 row affected (0.00 sec) mysql> SELECT * FROM tb_courses; +-----------+-------------+--------------+------------------+ | course_id | course_name | course_grade | course_info | +-----------+-------------+--------------+------------------+ | 1 | Network | 3 | Computer Network | | 2 | Database | 3 | MySQL | | 3 | Java | 4 | Java EE | +-----------+-------------+--------------+------------------+ 3 rows in set (0.00 sec)
由运行结果可以看出,course_id 为 4 的记录已经被删除。
清空表数据
mysql清空表可以用delete和truncate两个命令来完成:
-
delete
① 语法:delete from table_name;
② 示例:DELETE FROM
order
;- truncate
① 语法:truncate table table_name;
② 示例:TRUNCATE TABLE
order
; -
区别
① 使用delete清空表中的记录,内容的ID仍然从删除点的ID继续建立,而不是从1开始。而truncate相当于保留了表的结构而重新建立了一张同样的新表。delete的效果有点像将mysql表中所有记录一条一条删除到删完。
② 效率上truncate比delete快。但truncate删除后不记录mysql日志,不可以恢复数据。
复杂删除案例
案例1 其他表作为条件
DELETE FROM t_student WHERE id in ( SELECT a.studentID FROM t_student_gradeclass_course as a ,t_grade_class as b WHERE a.gradeClassID=b.id and grade='十六年级' )
案例2 自己表作为条件删除自己表数据
错误案例
DELETE FROM t_student_gradeclass_course WHERE id in ( SELECT a.id FROM t_student_gradeclass_course as a ,t_grade_class as b WHERE a.gradeClassID=b.id and grade='十六年级' )
报错: > 1093 - You can’t specify target table ‘t_student_gradeclass_course’ for update in FROM clause
翻译: 你不能在表子句中指定更新的目标表’t_student_gradeclass_course’
因为在mysql中不允许修改的表作为,修改表where的子查询,oracle就可以
解决办法 : 将修改条件放入一个虚拟表中就行了
正确案例
DELETE FROM t_student_gradeclass_course WHERE id in ( -- 虚拟表 SELECT id FROM( -- 删除条件 SELECT a.id FROM t_student_gradeclass_course as a ,t_grade_class as b WHERE a.gradeClassID=b.id and grade='十六年级' ) as a )
点赞 -收藏-关注-便于以后复习和收到最新内容 有其他问题在评论区讨论-或者私信我-收到会在第一时间回复 如有侵权,请私信联系我 感谢,配合,希望我的努力对你有帮助^_^ -
Mysql数据库sql语句
2022-06-09 00:10:56MySQL数据模型数据库表2.1.SQL通用语法SQL语句可以单行或多行书写,以分号结尾SQL语句可以使用空格/缩进来增强语句的可读性MySQL数据库的SQL语句不区分大小写,关键字建议使用大写注释:单行注释: -
创建数据库的SQL语句:mysql数据库
2021-01-19 00:20:38创建数据库的SQL语句:mysql数据库创建数据库的SQL语句:1 create database stuDB2 on primary -- 默认就属于primary文件组,可省略3 (4 /*--数据文件的具体描述--*/5 name='stuDB_data', -- 主数据文件的逻辑名称6 ... -
使用MySQL创建数据库,实现基本SQL语句
2021-11-29 09:27:48一、登入 ... 安装部署好MySQL后,打开命令...注意:使用SQL语句时一定要加“;” 查看MySQL的版本 show variables like 'version'; 创建数据库 创建一个Demo01数据库 create database Demo01; 注意:... -
MySQL数据库常用语句
2021-05-09 20:05:11删除字段 ALTER TABLE 表名 DROP 字段名 新增字段 ALTER TABLE 表名 ADD 字段名 字段类型(字段长度) DEFAULT 默认值 COMMENT ‘注释’; 查看表数据结构 desc 表名; show columns from 表名; 查看建表语句 show... -
MySQL删除数据库
2017-09-06 16:15:34MySQL 删除数据库 -
MySQL数据库更新语句update使用详解
2021-03-14 19:17:22用于操作数据库的SQL一般分为两种,一种是查询语句,也就是我们所说的SELECT语句,另外一种就是更新语句,也叫做数据操作语句。言外之意,就是对数据进行修改。在标准的SQL中有3个语句,它们是INSERT、UPDATE以及... -
mysql数据库查询语句
2021-01-18 19:06:11一 数据库的语句1 关于数据库创建数据库 create database 数据库名字(自己命名)查看mysql下的所有数据库 show databases;查看某个数据库定义的信息 show create database 数据库名字删除数据库 drop database 数据库... -
数据库MySQL——SQL语句(命令)
2021-01-20 00:01:49SQL语句分类DCL (Data Control Language):数据控制语言;用来管理用户及权限DDL(Data Definition Language):数据定义语言;用来定义数据库对象:库,表,列等DML(Data Manipulation Language):数据操作语言;用来... -
MYSQL数据库常用备份及恢复语句
2021-02-03 20:21:22备份MySQL数据库的命令,... 文件备份MySQL数据库为带删除表的格式,能够让该备份覆盖已有数据库而不需要手动删除原有数据库。mysqldump -–add-drop-table -uusername -ppassword databasename > backupfile.sq... -
MySQL删除数据库(DROP DATABASE语句)
2020-11-13 15:48:10在MySQL中,当需要删除已创建的数据库时,可以使用DROP DATABASE语句。其语法格式为: DROP DATABASE [ IF EXISTS ] <数据库名> 语法说明如下: <数据库名>:指定要删除的数据库名。 IF EXISTS:... -
【MySQL--创建语句】优秀的人都有段难熬的经历---创建MySQL数据库基础语句
2021-12-28 22:51:13【MySQL--创建语句】优秀的人都有段难熬的经历---创建MySQL数据库基础语句 -
mysql数据库所有基本操作语句
2021-07-26 21:07:46一、库的操作 ...5、删除数据库 drop database tes1t; 二、数据表的操作 1、查看当前数据库下所有的数据表名称 Show tables; 2、创建新的数据表 Create table 数据表名(字段名); 例: create table tb_dem -
mysql数据库执行sql语句怎么写
2021-01-19 06:44:47展开全部Mysql常用命令详解Mysql安装目录62616964757a686964616fe4b893e5b19e31333339653765数据库目录/var/lib/mysql/配置文件/usr/share/mysql(mysql.server命令及配置文件)相关命令/usr/bin(mysqladmin mysqldump... -
mysql数据库基础语句讲解
2021-05-13 08:45:32mysql数据库基础讲解一.数据库客户端命令二.数据库基础sql语句三.数据表基础语句四.数据的增删改查(重点) 一.数据库客户端命令 1.mysql: mysql命令行工具,一般用来连接访问mysql数据库 常用选项: -u 指定用户登录 -... -
操作mysql数据库的语句
2022-03-27 13:21:39大家好,今天我们分享操作mysql数据库的语句 接下来的命令都在sqlyog 这个可视化工具上进行 然后,mysql 数据库的操作顺序就是 : 操作库,操作表,操作表中的数据 查看数据库 SHOW DATABASES; 在sqlyog上 ,tab键... -
Mysql 删除数据库drop database详细介绍
2020-12-16 04:13:28Mysql 删除数据库drop database 方法-:使用cmd模式下载删除 mysql> drop database school; 此命名删除了school数据库。但如果school数据库不存在就会报错。所以完整的语句应该这么写: mysql> drop database if ... -
MYSQL 删除语句
2017-12-22 09:03:15数据库存储数据,总会有一些垃圾数据,也会有一些不需要用的数据了,这些情况下,我们就可以删除这些数据,释放出一定的空间,给其他的数据使用 使用前需注意:删除(DELETE),是删除一(条)行数据,图1里,有4条(行... -
MySQL学习之路(五):MySQL删除数据库
2020-02-16 21:09:24在 MySQL 中,当需要删除已创建的数据库时,可以使用 DROP DATABASE 语句。其语法格式为: DROP DATABASE [ IF EXISTS ] <数据库名> 语法说明如下: 【1】<数据库名>:指定要删除的数据库名。 【2】IF ... -
MYSQL数据库常用命令
2021-01-19 17:41:431、linux 安装数据库# yum install mysql* -y2、启动数据库/关闭数据库/重启数据库/查看数据库状态# /etc/init.d/mysqld start# /etc/init.d/mysqld stop# /etc/init.d/mysqld restart# /etc/init.d/mysqld status3... -
Mysql数据库字符串替换常用语句
2021-01-28 03:09:11如果只是简单的几条数据,我们只需要直接去网站后台或者MYSQL数据表中修改即可,但如果需要批量修改大量同一字符串时,就需要灵活的选用MYSQL语句进行批量替换,常用Mysql数据库字符串替换语句如下replace替换字符串... -
MySQL数据库,SQL语句,以及如何操作MySQL数据库
2022-03-12 19:29:34MySQL数据库是目前使用最广泛、流行度最高的开源免费数据库。 什么是SQL SQL 是用于访问和处理数据库的标准的计算机语言。 SQL语句对大小写不敏感,也就是大小写都可以。 使用SQL管理数据库 1. SQL的SELECT语句 ... -
mysql数据库应用形考任务(实训1~4.zip)
2021-07-14 18:55:56掌握在MySQL中创建数据库和表的方法,理解MySQL支持的数据类型、数据完整性在MySQL下的表现形式,练习MySQL数据库服务器的使用,练习CREATE TABLE,SHOW TABLES,DESCRIBE TABLE,ALTER TABLE,DROP TABLE语句的操作... -
MySQL删除数据库的命令是什么?
2021-02-05 08:31:38删除数据库的命令是:“DROP DATABASE 数据库名;”;例“drop database student;”就是删除名为student的数据库。“DROP DATABASE”语句可以用于删除数据库。...例如删除名为 student 的数据库:mysql&... -
mysql数据库常用sql语句
2018-11-03 21:10:01数据库可以用图形化工具来实现一系列操作,这里涉及一些cmd命令行 ...1. 进入数据库: mysql -u root -p (默认用户名为root,这个与mysql安装时的设置的用户有关,可设置使用不同用户) 退出则用exit指令 ... -
mysqldump命令 MySQL数据库备份
2021-01-09 18:26:50在每个创建数据库表语句前添加删除数据库表的语句 — -add-locks 备份数据库表时锁定数据库表 — -all-databases 备份MySQL服务器上的所有数据库 — -comments 添加注释信息 — -compact 压缩模式,产生更少...