关于mysql临时表

iloveyou123 2006-09-09 09:22:12
请问mysql的临时表具体语法要怎么写.?
我在网上找了一些相关资料,CREATE TEMPORARY TABLE tmp_table (name VARCHAR(10) NOT NULL,value INTEGER NOT NULL),但是好像不起效果。数据无法插入.?请各位指教,多谢啦!
...全文
686 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
skyairmj 2006-10-16
  • 打赏
  • 举报
回复

版本问题吧
研究你的mysql的说明文档,看是否支持临时表
行近远山 2006-10-16
  • 打赏
  • 举报
回复
create temporary table temp select name from test;
可行~~~
行近远山 2006-10-10
  • 打赏
  • 举报
回复
mysql> select * from test;
+----------+
| name |
+----------+
| f |
| e |
| ef |
| efs |
| efsf |
| efsfa |
| efsfae |
| efsfafe |
| efsfaefe |
+----------+
9 rows in set (0.22 sec)

mysql> create temporary table select name from test;

ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that
corresponds to your MySQL server version for the right syntax to use near 'selec
t name from test' at line 1


to allright_flash() :

好像不行啊~~~
行近远山 2006-10-10
  • 打赏
  • 举报
回复
在mysql命令行下是可以,
但是不知道有没试过在程序中执行
牵扯到session问题就不是那么简单了~~~

不过 allright_flash() 的直接将select出来的数据放到临时表中,我倒没试过

先试试

回头贴结果~~
toucher 2006-10-09
  • 打赏
  • 举报
回复
还没用过临时表,不过我刚刚试过我这边可以:
mysql> create temporary table tmp_table (
-> name varchar (10) not null
-> ) ;
Query OK, 0 rows affected (0.11 sec)

mysql> desc tmp_table ;
+-------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| name | varchar(10) | NO | | | |
+-------+-------------+------+-----+---------+-------+
1 row in set (0.05 sec)

mysql> insert into tmp_table
-> values ('yeah') ;
Query OK, 1 row affected (0.05 sec)

mysql> select *
-> from tmp_table ;
+------+
| name |
+------+
| yeah |
+------+
1 row in set (0.01 sec)
你的命令写对了没啊?
行近远山 2006-10-09
  • 打赏
  • 举报
回复
创建表示没什么问题,但是往临时表里面插入数据就出错啊
说是不存在该表
allright_flash 2006-10-09
  • 打赏
  • 举报
回复
$sql = “CREATE TEMPORARY TABLE tmp_table_name SELECT `id`, `name`, `date`, ‘完成’ AS `type` FROM table_A WHERE 条件语句……”;
mysql_query($sql) OR die(”query false!”);
allright_flash 2006-10-09
  • 打赏
  • 举报
回复
例子:
CREATE TEMPORARY TABLE tmp_table_name SELECT id, name, date
行近远山 2006-10-09
  • 打赏
  • 举报
回复
我也遇到了同样的问题,不知道楼主的问题解决没?
如果解决了,希望贴出来分享一下呀~~
mschen 2006-09-09
  • 打赏
  • 举报
回复
--临时表仅在当前的数据库会话里边是可见的,当你的连接关闭的时候,表会自动被删除.

--你的创建表的语句和插入数据的语句是在一个会话里边吗?否则的话,当然不能插入了.

56,678

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧