MySQL 在未选择数据库的情况下创建临时 table
MySQL create temporary table without database selected
我正在尝试创建一个临时 table 来 运行 一些测试。
CREATE TEMPORARY TABLE IF NOT EXISTS users (
id int(11) NOT NULL AUTO_INCREMENT,
name varchar(255) DEFAULT NULL,
PRIMARY KEY (id)
) ENGINE=MEMORY DEFAULT CHARSET=utf8;
它告诉我没有选择数据库。我不想为此目的创建数据库,而且我找不到任何关于临时数据库的信息。不,我不想创建数据库然后删除它,我希望这个脚本 运行 即使用户没有创建数据库权限。
如何创建临时 table,运行 一些查询然后在连接关闭时将其删除?
很简单,你不能。
只要你不使用
USE testdb;
或者在连接字符串中输入数据库。
程序无法添加任何内容并创建临时文件 table
数据库是 mysql 程序的参考点并且是绝对需要的,即使对于临时 tables 和其他一切
您可以使用已经存在的数据库创建临时数据库table
mysql> 显示数据库;
mysql> 使用数据库名
可用的名称。
但是临时 table 无法在不连接到数据库的情况下创建。
临时 table 仅存在于该特定会话。建立到特定数据库的连接后,我们可以创建和查询临时 table.
我正在尝试创建一个临时 table 来 运行 一些测试。
CREATE TEMPORARY TABLE IF NOT EXISTS users (
id int(11) NOT NULL AUTO_INCREMENT,
name varchar(255) DEFAULT NULL,
PRIMARY KEY (id)
) ENGINE=MEMORY DEFAULT CHARSET=utf8;
它告诉我没有选择数据库。我不想为此目的创建数据库,而且我找不到任何关于临时数据库的信息。不,我不想创建数据库然后删除它,我希望这个脚本 运行 即使用户没有创建数据库权限。
如何创建临时 table,运行 一些查询然后在连接关闭时将其删除?
很简单,你不能。
只要你不使用
USE testdb;
或者在连接字符串中输入数据库。
程序无法添加任何内容并创建临时文件 table
数据库是 mysql 程序的参考点并且是绝对需要的,即使对于临时 tables 和其他一切
您可以使用已经存在的数据库创建临时数据库table
mysql> 显示数据库; mysql> 使用数据库名 可用的名称。
但是临时 table 无法在不连接到数据库的情况下创建。
临时 table 仅存在于该特定会话。建立到特定数据库的连接后,我们可以创建和查询临时 table.