MySQL CREATE TEMPORARY TABLE错误

时间:2012-11-29 21:53:57

标签: mysql easyphp

我正在使用MySQL 5.5.27-log运行EasyPHP 5.4.6。

当我尝试使用以下内容创建临时表时:

CREATE TEMPORARY TABLE temp_table (x int);

我收到以下错误:

ERROR 1005 (HY000): Can't create table 'temp_table' (errno: 22)

但是,如果我删除“TEMPORARY”,它就会起作用。

临时表的语法是从示例页面逐字复制的。我尝试使用谷歌搜索错误号码,但这并没有产生任何我可以使用的东西。

有人能想到可能会发生什么吗?

2 个答案:

答案 0 :(得分:1)

错误:22表示MySQL正在尝试访问路径无效的文件(fopen - > INVAL)。 MySQL不太可能生成无效路径,因此请检查您的临时路径是否设置正确。如果在MySQL配置中有自定义设置tmpdir,请确保它是有效路径。如果没有,请使用SHOW VARIABLES LIKE '%tmp%'检查当前值;如果某些内容不正确或缺失,请检查系统的TEMP环境变量是否设置正确。有关详情,请查看http://dev.mysql.com/doc/refman/5.5/en/temporary-files.html

答案 1 :(得分:0)

确保您使用的用户已授予create_tmp_table_priv privelege(user数据库的表mysql