找到关于数据库的6705篇文章

MySQL 如何评估写在不同行上的语句?

Jennifer Nicholas
更新于 2020-06-22 11:53:48

77 次浏览

实际上,MySQL 在遇到终止分号时确定语句的结束位置。假设我们在一行中编写一个语句,那么在编写第一行之后,MySQL 会立即从“mysql>”更改为“->”,这表示 MySQL 尚未看到完整的语句,并且正在等待其余部分。当它遇到分号时,MySQL 将执行该语句。这可以通过以下示例来理解:示例mysql> Select Id, Name     -> From     -> Student_info     -> ; +------+---------+ | Id   | Name    | +------+---------+ ... 阅读更多

如何在没有 FROM 子句的情况下使用 MySQL SELECT?

Sravani S
更新于 2020-06-22 11:42:35

1K+ 次浏览

SELECT 之后的 FROM 子句显示对表的引用。但是,如果没有对任何表的引用,则可以使用不带 FROM 子句的 SELECT。换句话说,可以使用 SELECT 来检索无需引用任何表即可计算的行。考虑以下语句:mysql> Select concat_ws(" ","Hello", "World"); +---------------------------------+ | concat_ws(" ","Hello", "World") | +---------------------------------+ | Hello World                     | +---------------------------------+ 1 row in set (0.00 sec) mysql> Set @var1=100; Query OK, 0 rows affected (0.00 sec) mysql> Select @var1; +-------+ | @var1 | +-------+ |   100 | +-------+ 1 row in set (0.00 sec)

如何从单个查询中获取多个 MySQL 表的输出?

Vrundesha Joshi
更新于 2020-06-22 11:41:03

278 次浏览

众所周知,一个查询可以包含多个以分号结尾的 MySQL 语句。如果要从多个表中获取结果,请考虑以下示例,该示例通过编写单个查询来从“Student_info”和“Student_detail”获取结果集:mysql> Select Name, Address from Student_info; Select Studentid, Address from Student_detail; +---------+------------+ | Name    | Address    | +---------+------------+ | YashPal | Amritsar   | | Gaurav  | Chandigarh | | Raman   | Shimla     | | Ram     | Jhansi     | | Shyam   | Chandigarh | | ... 阅读更多

当我将空字符串插入声明为 NOT NULL 的 MySQL 列时,数据类型会起到什么作用?

V Jyothi
更新于 2020-06-22 11:43:04

98 次浏览

当我们将空字符串插入声明为 NOT NULL 的 MySQL 列时,结果集中的空字符串表示取决于数据类型。众所周知,插入空字符串时,我们向 MySQL 提供了一个值为 INT 0 的整数表示。现在,如果该列具有 INTEGER 数据类型,则 MySQL 将在结果集中显示 0,因为空字符串已被映射为整数零。示例mysql> create table test(id int NOT NULL, Name Varchar(10)); Query OK, 0 rows affected (0.19 sec) mysql> Insert into test(id, name) ... 阅读更多

如何检查当前的 MySQL 事务隔离级别?

karthikeya Boyini
更新于 2020-06-22 11:43:36

3K+ 次浏览

通过执行 SELECT @@TX_ISOLATION 命令,我们可以检查当前的 MySQL 事务隔离级别。示例mysql> SELECT @@TX_ISOLATION; +-----------------+ | @@TX_ISOLATION  | +-----------------+ | REPEATABLE-READ | +-----------------+ 1 row in set (0.00 sec)

为什么当我将空字符串插入声明为 NOT NULL 的 MySQL 列时,它显示 0 而不是空字符串?

Rishi Rathor
更新于 2020-02-14 06:22:42

1K+ 次浏览

这是因为插入空字符串意味着我们正在插入某个值而不是 NULL。空字符串显然映射为整数零。换句话说,我们可以说,通过插入空字符串,我们向 MySQL 提供了一个值为 INT 0 的整数表示。考虑以下示例,其中我们插入了一个空字符串,它被 MySQL 映射为 0。mysql> create table test(id int NOT NULL, Name Varchar(10)); Query OK, 0 rows affected (0.19 sec) mysql> Insert into test(id, name) values('1', 'Gaurav'), ('0', 'Rahul'), ('', 'Aarav'); Query OK, 3 ... 阅读更多

如何将零或空字符串插入定义为 NOT NULL 的 MySQL 列中?

seetha
更新于 2020-06-22 11:44:55

1K+ 次浏览

将列声明为“NOT NULL”意味着此列不接受 NULL 值,但零 (0) 和空字符串本身就是一个值。因此,如果要将零或空字符串插入定义为 NOT NULL 的 MySQL 列中,则不会出现任何问题。以下 0 和空字符串与 NULL 的比较将使其更清晰:mysql> Select 0 IS NULL, 0 IS NOT NULL; +-----------+---------------+ | 0 IS NULL | 0 IS NOT NULL | +-----------+---------------+ |         0 |             1 | ... 阅读更多

为什么在 MySQL 中,我们不能将“=”、“<”或“<>”之类的算术运算符与 NULL 一起使用?

vanithasree
更新于 2020-06-22 11:31:08

163 次浏览

其背后的原因是,当我们将 NULL 与“=”、“<”之类的比较运算符一起使用时,我们将不会从比较中获得任何有意义的结果。 Select 10 = NULL, 10< NULL, 10NULL; +-----------+----------+----------+ | 10 = NULL | 10< NULL | 10NULL | +-----------+----------+----------+ |      NULL |     NULL |     NULL | +-----------+----------+----------+ 1 row in set (0.07 sec) 以上结果集在任何意义上都没有意义。

如果在当前事务的中间执行 START TRANSACTION 命令,当前 MySQL 事务会发生什么情况?

Jai Janardhan
更新于 2020-06-22 11:29:39

139 次浏览

如果在当前事务的中间执行 START TRANSACTION,则当前事务将被提交并结束。当前事务中所做的所有数据库更改都将永久保存。这称为 START TRANSACTION 命令的隐式提交。示例假设表“marks”中有以下值:mysql> select * from marks; +------+---------+-----------+-------+ | Id   | Name    | Subject   | Marks | +------+---------+-----------+-------+ | 1    | Aarav   | Maths     | 50    | | 1    | Harshit | Maths     | 55    | | 3   ... 阅读更多

如果在事务的中间执行 DDL 语句,MySQL 当前事务会发生什么情况?

Chandu yadav
更新于 2020-06-22 11:30:35

249 次浏览

当在当前事务的中间执行任何 DDL 语句(例如创建或删除数据库、创建、更改或删除表或存储例程)时,当前的 MySQL 事务将被提交并结束。当前事务中所做的所有数据库更改都将永久保存,并且无法回滚。示例mysql> START TRANSACTION; Query OK, 0 rows affected (0.00 sec) mysql> INSERT INTO MARKS Values(6, 'Manak', 'History', 70); Query OK, 1 row affected (0.26 sec) mysql> Create table student(id int, Name Varchar(10), ); Query OK, 0 rows affected (0.84 sec) 正如我们所见 ... 阅读更多

广告