首页 > 数据库 >MySQL 数据库查询与数据操作:使用 ORDER BY 排序和 DELETE 删除记录

MySQL 数据库查询与数据操作:使用 ORDER BY 排序和 DELETE 删除记录

时间:2023-11-11 21:32:24浏览次数:38  
标签:connector mysql mycursor sql MySQL mydb ORDER DELETE

使用 ORDER BY 进行排序

使用 ORDER BY 语句按升序或降序对结果进行排序。

ORDER BY 关键字默认按升序排序。要按降序排序结果,使用 DESC 关键字。

示例按名称按字母顺序排序结果:

import mysql.connector

mydb = mysql.connector.connect(
  host="localhost",
  user="yourusername",
  password="yourpassword",
  database="mydatabase"
)

mycursor = mydb.cursor()

sql = "SELECT * FROM customers ORDER BY name"

mycursor.execute(sql)

myresult = mycursor.fetchall()

for x in myresult:
  print(x)

ORDER BY DESC

使用 DESC 关键字以降序排序结果。

示例按名称以字母逆序排序结果:

import mysql.connector

mydb = mysql.connector.connect(
  host="localhost",
  user="yourusername",
  password="yourpassword",
  database="mydatabase"
)

mycursor = mydb.cursor()

sql = "SELECT * FROM customers ORDER BY name DESC"

mycursor.execute(sql)

myresult = mycursor.fetchall()

for x in myresult:
  print(x)

删除记录

您可以使用"DELETE FROM"语句从现有表格中删除记录:

示例删除地址为"Mountain 21"的记录:

import mysql.connector

mydb = mysql.connector.connect(
  host="localhost",
  user="yourusername",
  password="yourpassword",
  database="mydatabase"
)

mycursor = mydb.cursor()

sql = "DELETE FROM customers WHERE address = 'Mountain 21'"

mycursor.execute(sql)

mydb.commit()

print(mycursor.rowcount, "条记录已删除")

重要提示:请注意语句 mydb.commit()。这是必需的,以使更改生效,否则不会对表格进行更改。

请注意DELETE语法中的WHERE子句:WHERE子句指定应删除哪些记录。如果省略WHERE子句,将删除所有记录!

防止SQL注入

通常认为,转义任何查询的值都是一种良好的做法,甚至在删除语句中也是如此。

这是为了防止SQL注入,这是一种常见的网络黑客技术,可以破坏或滥用您的数据库。

mysql.connector 模块使用占位符 %s 在删除语句中转义值:

示例使用占位符 %s 方法转义值:

import mysql.connector

mydb = mysql.connector.connect(
  host="localhost",
  user="yourusername",
  password="yourpassword",
  database="mydatabase"
)

mycursor = mydb.cursor()

sql = "DELETE FROM customers WHERE address = %s"
adr = ("Yellow Garden 2", )

mycursor.execute(sql, adr)

mydb.commit()

print(mycursor.rowcount, "条记录已删除")

最后

为了方便其他设备和平台的小伙伴观看往期文章:公众号搜索Let us Coding,或者扫描下方二维码,关注公众号,即可获取最新文章。

看完如果觉得有帮助,欢迎点赞、收藏关注

标签:connector,mysql,mycursor,sql,MySQL,mydb,ORDER,DELETE
From: https://blog.51cto.com/xiaowange/8320212

相关文章

  • MySQL 数据库查询与数据操作:使用 ORDER BY 排序和 DELETE 删除记录
    使用ORDERBY进行排序使用ORDERBY语句按升序或降序对结果进行排序。ORDERBY关键字默认按升序排序。要按降序排序结果,使用DESC关键字。示例按名称按字母顺序排序结果:importmysql.connectormydb=mysql.connector.connect(host="localhost",user="youruserna......
  • 一、MySQL 基础
    转自:https://www.cnblogs.com/pengguozhen/p/15170515.html一、为什么要学习数据库1、持久化数据到本地。2、可以实现结构化查询,方便管理。二、数据库的相关概念DBMS、DB、SQL1、DB:数据库,保存一组有组织的数据的容器。2、DBMS:数据库管理系统,又称为数据库软件(产品),用......
  • 如何在第一个查询没有结果时执行第二个查询 - MYSQL
    在MySQL中,您可以使用IFNULL()函数和UNION操作符来实现在第一个查询没有结果时执行第二个查询。下面是一个示例:SELECTcolumn1,column2FROMtable1WHEREconditionUNIONSELECTcolumn1,column2FROMtable2WHEREconditionANDNOTEXISTS(SELECTcolumn1,column2......
  • Flask-MySQLdb与Flask-SQLAlchemy
    Flask-MySQLdb和Flask-SQLAlchemy是Flask中用于与MySQL数据库交互的两个不同的扩展。它们有不同的使用方式和优劣势。Flask-MySQLdb:用法:fromflaskimportFlaskfromflask_mysqldbimportMySQLapp=Flask(__name__)app.config['MYSQL_HOST']='your_mysq......
  • /bin/ld: cannot find -lmysqlclient
     001、make编译报错:/bin/ld:cannotfind-lmysqlclient 002、查找相关文件(base)[[email protected]]#find/-name*libmysqlclient.so*##lib+提示的缺失文件+.so 003、复制一份到/usr/lib中(base)[[email protected]]#cp/usr/lib64......
  • 性能测试复习准备——linux环境下安装mysql8
    mysql下载地址:https://dev.mysql.com/downloads/mysql/      下载完成后,把软件包上传到此目录下:/soft/mysql8/ 并解压缩到指定目录下:/evir/mysql8/                  在bin目录下执行初始化命令: ./mysqld--user=mysql......
  • Java基础、MySQL数据库、Web前端(HTML、CSS、JavaScript)
    一、选择题(每题1分,共20题,共20分),注:可能有多选哦!1、在Java中,下列标识符不合法的有(   )A.newB.$UsdollarsC.1234 D.car.taxi2、定义了int型二维数组int[][]a=newinta[6][7]后,数组元素a[3][4]前的数组元素个数为(  )  A.24 B.25 C.18 D.173、下面程序的运行结果是( ......
  • ../include/randseqaccess.hh:21:29: fatal error: mysql++/mysql++.h: No such file
     001、make编译报错:../include/randseqaccess.hh:21:29:fatalerror:mysql++/mysql++.h:Nosuchfileordirectory 002、解决方法:。 ......
  • 字符集mysql
    MySQL的字符集从latin1经过utf8到utf8mb4,算是经历曲折的路线。特别是从使用一个字符集变更另一个字符集时,实践当中都非常无奈,不是没办法,而是麻烦。到了MySQL8.0多出了一个字符集utf8mb4_0900_*的字符集,有必要了解一下。1.字符集基础先了解下MySQL字符集都有哪些地方使用,进入数据......
  • MySQL SUBSTRING() 函数
    语法SUBSTRING(string,start,length)参数值参数必填描述string必需要从中提取的字符串start必需起始位置。可以是正数也可以是负数。如果是正数,此函数从字符串的开头提取。如果是负数,此函数从字符串的末尾提取;字符串索引从1开始length可选要提取的字......