【问题标题】:PHP, MySQL, and temporary tablesPHP、MySQL 和临时表
【发布时间】:2010-04-13 05:04:38
【问题描述】:

php新手。

1.这段 PHP & MySQL 代码有什么问题吗?

include_once "db_login.php" ;

$sql = "DROP TEMPORARY TABLE IF EXISTS temp_sap_id_select" ;
mysql_query ( $sql ) or ( "Error " . mysql_error () ) ;

$sql = " CREATE TEMPORARY TABLE temp_sap_id_select 
               (
                 `current_page` INT NOT NULL,
                 `total_pages` INT NOT NULL,
                 `select_date` DATE NOT NULL,
                 `select_schcode` CHAR(6) NOT NULL,
                 `select_user` CHAR(30) NOT NULL,
                 `select_id` CHAR(9) NOT NULL
               ) " ;
mysql_query ( $sql ) or ( "Error " . mysql_error () ) ;

2. 诚然,我是个笨孩子,但我还是会问:如果我使用 MySQL GUI 并打开了目标数据库,它会知道上面 PHP/MySQL 创建的临时表吗? (如果正确创建了临时表)?

【问题讨论】:

  • 您在执行脚本时收到任何错误消息吗?如果是,那是什么?
  • 永远不要问“有什么问题吗”,而只问“我怎么知道有没有问题”。不幸的是,SO 用户的头脑中没有 PHP 解释器来运行您的代码。另一方面,如果你让他,你的 PHP 总是会告诉你是否有什么问题
  • 对不起,不,我没有收到错误,所以我想应该没问题。
  • 你在 .ini 文件中有 error_logging 吗?
  • 问一个问题就能获得积分吗?我的代表从 116 上升到 118。

标签: php mysql temp-tables


【解决方案1】:

临时表只对用于创建它们的连接可见,一旦连接关闭,它们就会消失。

【讨论】:

  • 好的,很高兴知道。所以我的 MySQL gui 不会看到这个临时表,即使两个连接(PHP 和 gui)仍然分别打开并且每个都使用相同的数据库登录详细信息。
  • 那么使用连接池会不会很危险?
  • @Mohsen 我认为连接池意味着您将使用一定数量的连接示例 10,这是一种仅管理 N 个连接的 snigleton 模式。如果临时表通过连接保持不变,那么它不会消失,它将被 N 个打开的连接之一卡住。 (我的猜测)
猜你喜欢
  • 2013-03-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-06-27
  • 2011-01-20
  • 2013-08-07
  • 2015-01-30
  • 1970-01-01
相关资源
最近更新 更多