MYSQL 内存表基本概念澄清

guxinwenyue4 2007-12-12 12:58:48
加精
create temporary table urlcount TYPE=HEAP SELECT * FROM AllURLCount where URL='$URL'
$URL是浏览器传来的参数
我现在不明白这个表的建立
查询了一下这是建立了一个临时内存表 名为:urlcount
我现在不明白的地方是:
1.这个表是个内存表,用的是服务器端得内存吗?
2.若有两个用户,分别带的后便的URL不同,用户1带www.abc.com 用户2带www.123.com 这个时候会不会有两个内存表?若是有两个内存表那么查询的时候如何区分?
3.内存表的消失时间是什么时候,是用户浏览器关闭的时候还是服务器关闭mysql的时候,应该如何手动关闭?
4.TYPE=HEAP 和TYPE=其他的几个参数那个好?


谢谢 下班(18:00)结贴 上班的时候不能上论坛,所以不方便回答问题
...全文
1856 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
laowang2 2007-12-28
  • 打赏
  • 举报
回复
up
yanqiaofang 2007-12-15
  • 打赏
  • 举报
回复
强,有空多请教!
懒得去死 2007-12-14
  • 打赏
  • 举报
回复
懒得去死 2007-12-14
  • 打赏
  • 举报
回复
对MYSQL 内存表基本概念澄清。大家可以看看。
guxinwenyue4 2007-12-12
  • 打赏
  • 举报
回复
好了 说下班结贴 都下了半个小时了 不好意思 非常感谢您的回答
懒得去死 2007-12-12
  • 打赏
  • 举报
回复
你们写的设计有问题。我还没有碰到过要把临时表放到URL后面当参数用。
guxinwenyue4 2007-12-12
  • 打赏
  • 举报
回复
能不能这样 每个用户来就创建一个和用户带的URL参数为表名的临时表
我害怕这样的话 服务器很快就承受不了 差不多同时在线有50~100
那就是50~100个临时表了
guxinwenyue4 2007-12-12
  • 打赏
  • 举报
回复
若那样的话
骑着上帝看戏》》》3、关闭与服务器的连接时。也就是释放掉你现在连接。

要是有一个用户关闭了浏览器,链接就断了 这个表就不存在了 那第二个用户的信息岂不是也消失了

懒得去死 2007-12-12
  • 打赏
  • 举报
回复

第一次调用:
create temporary table urlcount TYPE=HEAP SELECT * FROM AllURLCount where URL='$URL'
第二次调用

insert into urlcount TYPE=HEAP SELECT * FROM AllURLCount where URL='$URL'
guxinwenyue4 2007-12-12
  • 打赏
  • 举报
回复
针对问题2
create temporary table urlcount TYPE=HEAP SELECT * FROM AllURLCount where URL='$URL'
这条sql语句是在一个页面
这个页面要带一个URL参数
要是有几个用户返回这个页面而带的URL参数不一样
这个时候会出现什么情况
骑着上帝看戏》》》不会,会报错。因为你的临时表不能创建两次。
不知不为过,不学就是错!》》》不会同时创建两个临时表。
OracleRoob 2007-12-12
  • 打赏
  • 举报
回复

1、临时表是在服务器端的内存中创建的。
2、不会同时创建两个临时表。
3、内存表在当前会话或连接断开时,系统自动销毁临时表。
4、前一个好。
懒得去死 2007-12-12
  • 打赏
  • 举报
回复
1、是的。
2、不会,会报错。因为你的临时表不能创建两次。
3、关闭与服务器的连接时。也就是释放掉你现在连接。
4、HEAP好。

56,687

社区成员

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

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