找到 6705 篇文章 关于数据库

如何在 MySQL 中查找当前事务模式?

Monica Mona
更新于 2020-02-14 06:10:57

521 次查看

我们可以运行“SELECT @@AUTOCOMMIT”命令来检查当前事务模式。mysql> Select @@AUTOCOMMIT; +--------------------+ | @@AUTOCOMMIT       | +--------------------+ |       1            | +--------------------+ 1 row in set (0.05 sec) mysql> SET AUTOCOMMIT = 0; Query OK, 0 rows affected (0.00 sec) mysql> Select @@AUTOCOMMIT; +--------------------+ | @@AUTOCOMMIT       | +--------------------+ |         0          | +--------------------+ 1 row in set (0.00 sec)

用户如何隐式结束当前 MySQL 事务?

George John
更新于 2020-06-22 11:23:29

100 次查看

以下是几种可以隐式结束当前 MySQL 事务的方法:通过运行 DDL 语句运行任何 DDL 语句(例如创建或删除数据库、创建、更改或删除表或存储例程)将隐式结束当前 MySQL 事务并提交更改。这是因为在 MySQL 中,这些语句无法回滚。示例 mysql> START TRANSACTION; Query OK, 0 rows affected (0.00 sec) mysql> INSERT INTO MARKS Values(3, 'gaurav', 'Comp', 69); Query OK, 1 row affected (0.26 sec) mysql> Create table student(id int, Name Varchar(10), ); Query OK, 0 ... 阅读更多

MySQL 如何以垂直格式而不是表格格式生成输出?

varma
更新于 2020-06-22 11:09:33

411 次查看

通过在 MySQL 语句末尾使用 \G,它将以垂直格式而不是表格格式返回输出。考虑下面的示例:mysql> Select curdate(); +------------+ | curdate()  | +------------+ | 2017-11-06 | +------------+ 1 row in set (0.00 sec) mysql> Select CURDATE()\G *************************** 1. row *************************** CURDATE(): 2017-11-06 1 row in set (0.00 sec) 从上面的示例中,可以理解在 MySQL 语句末尾使用 \G 的区别。它以垂直格式而不是表格格式返回相同的输出。

MySQL 中 WITH ROLLUP 修饰符有什么用?

Sreemaha
更新于 2020-06-22 11:25:12

2K+ 次查看

“WITH ROLLUP”是一个与 GROUP BY 子句一起使用的修饰符。主要的是,它使汇总输出包含表示更高级别汇总操作的额外行。示例在下面的示例中,WITH ROLLUP 修饰符给出了包含额外行中总价格值的汇总输出。mysql> Select Item, SUM(Price) AS Price from ratelist Group by item WITH ROLLUP; +------+-------+ | Item | Price | +------+-------+ | A    |   502 | | B    |   630 | | C    |  1005 | | h    |   850 | | T    |   250 | | NULL |  3237 | +------+-------+ 6 rows in set (0.00 sec)

除了分号 (;) 终止符外,还有哪些内置命令可以执行 MySQL 查询?

V Jyothi
更新于 2020-06-22 11:25:59

813 次查看

借助以下内置命令,即使不使用分号 (;) 终止符,MySQL 也可以执行查询。例如我们可以使用 \G 选项使用此命令。这意味着将当前语句发送到服务器以执行并在垂直格式中显示结果。当我们使用 \G 并省略语句(单行或多行)中的分号 (;) 时,MySQL 会在遇到 \G 时确定语句的结尾。考虑下面的示例:mysql> Select * from ratelist\G *************************** 1. row ***************************    Sr: 1  Item: A Price: 502 *************************** 2. row ... 阅读更多

除了 START TRANSACTION 之外,还有哪个语句用于启动事务?

Sharon Christine
更新于 2020-06-22 11:10:21

163 次查看

我们也可以使用 BEGIN 语句来启动一个新事务。它与 START TRANSACTION 语句相同。示例 mysql> BEGIN; Query OK, 0 rows affected (0.00 sec) mysql> INSERT INTO Marks Values(1, 'Aarav', 'History', 40); Query OK, 1 row affected (0.00 sec) mysql> INSERT INTO Marks Values(2, 'Harshit', 'History', 48); Query OK, 1 row affected (0.00 sec) mysql> ROLLBACK; Query OK, 0 rows affected (0.04 sec) 在此示例中,事务是由 BEGIN 语句而不是 START TRANSACTION 语句启动的。然后执行两个 INSERT 语句,然后是 ROLLBACK 语句。ROLLBACK 语句将 ... 阅读更多

使用 ROLLUP 修饰符时,是否可以使用 MySQL ORDER BY 子句对结果进行排序?

usharani
更新于 2020-06-22 11:11:44

339 次查看

实际上,ROLLUP 和 ORDER BY 在 MySQL 中是互斥的,因此在查询中同时使用它们并不是一个好习惯。但是,如果我们在 ORDER BY 中使用 ROLLUP,那么主要缺点是汇总行将与计算它们的行的排序在一起。同样重要的是要注意,排序顺序将决定汇总行的位置。汇总行将在升序的开头和降序的结尾。考虑以下示例以更清楚地理解它:mysql> Select * from ... 阅读更多

当我在 GROUP BY 列表中使用显式排序顺序(ASC 或 DESC)和列名以及“WITH ROLLUP”修饰符时,汇总输出会有什么影响?

Nikitha N
更新于 2020-06-22 11:11:10

107 次查看

在使用显式排序顺序(ASC 或 DESC)以及 GROUP BY 列表中的列名和“WITH ROLLUP”修饰符的情况下,ROLLUP 添加的汇总行仍然出现在计算它们的行的后面,而不管排序顺序如何。众所周知,默认排序顺序是升序,因此在下面的示例中,如果我们不使用任何显式排序顺序,则输出将如下所示:mysql> Select sr, SUM(Price) AS Price from ratelist Group by sr with rollup; +-----+-------+ | sr  | Price | +-----+-------+ |  1  |   ... 阅读更多

MySQL 如何管理事务的行为?

Kumar Varma
更新于 2020-06-22 11:13:00

65 次查看

MySQL 可以通过以下两种模式来管理事务的行为:自动提交打开这是默认模式。在此模式下,每个 MySQL 语句(在事务内或事务外)都被视为一个完整的事务,并在其完成后默认提交。可以通过将会话变量 AUTOCOMMIT 设置为 1 来启动它,如下所示:SET AUTOCOMMIT = 1 mysql> SET AUTOCOMMIT = 1; Query OK, 0 rows affected (0.07 sec) 自动提交关闭这不是默认模式。在此模式下,后续一系列 MySQL 语句就像一个事务一样,并且没有活动被提交... 阅读更多

在 MySQL 中,我们如何在单个输出行中按类别获取总值?

Srinivas Gorla
更新于 2020-06-22 11:13:35

85 次查看

借助 MySQL SUM() 函数,我们可以在单个输出行中按类别获取总值。例如,在表“ratelist”中,如果我们想要获取类别“price”的总值,我们可以对 price 使用 SUM(),如下所示:mysql> select SUM(price) as totalprice from ratelist; +------------+ | totalprice | +------------+ |       3237 | +------------+ 1 row in set (0.00 sec) 上面的查询在一行输出中返回 price 的总值。

广告