doqpm82240
2010-11-19 04:18
浏览 92
已采纳

Firebird:如何在html页面中显示表结构?

I try to use the code below to show table structure in html page:

<HTML>
<HEAD>
<TITLE>PHP + Firebird / Interbase test (connection)</TITLE>
</HEAD>
<BODY>
<H3>FB Connect test.</H3>
<?php
// DB definition of account
define("DBNAME","xx.xxx.xx.xxx:D:\DATABASE\OCS DATA.FDB"); // data bsse name
define("DBUSER","USER"); // user name
define("DBPASS","USER"); // password

// DB connection
$dbh = ibase_connect(DBNAME,DBUSER,DBPASS);
echo ibase_errmsg();
if ($dbh == FALSE) {
echo 'could not connect to DB<BR>';
} else {
echo 'success to connect to DB<BR>';
}
$ibsql = "SHOW TABLE DOC_TO";
echo ibase_errmsg();
$result=ibase_query($ibsql);
echo $result;
?>

</BODY>
</HTML>

but why it just show the result as "success to connect to DB"?

图片转代码服务由CSDN问答提供 功能建议

我尝试使用下面的代码在html页面中显示表结构: < pre> &lt; HTML&gt; &lt; HEAD&gt; &lt; TITLE&gt; PHP + Firebird / Interbase测试(连接)&lt; / TITLE&gt; &lt; / HEAD&gt; &lt; BODY&gt; &lt; H3&gt; FB 连接测试。&lt; / H3&gt; &lt;?php //帐户的定义 define(“DBNAME”,“xx.xxx.xx.xxx:D:\ DATABASE \ OCS DATA.FDB”); // data bsse name define(“DBUSER”,“USER”); //用户名 define(“DBPASS”,“USER”); //密码 //数据库连接 $ dbh = ibase_connect(DBNAME,DBUSER,DBPASS); echo ibase_errmsg(); if($ dbh == FALSE){ echo'无法连接到DB&lt; BR&gt;'; }其他{ echo'成功连接到DB&lt; BR&gt;'; } $ ibsql =“SHOW TABLE DOC_TO”; echo ibase_errmsg(); $ result = ibase_query($ ibsql); echo $ result; ?&gt; &lt; / BODY&gt; &lt; / HTML&gt;

但为什么它只显示 结果为“连接到DB的成功”?

  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • douhu3424 2010-11-19 04:53
    已采纳

    Firebird does not seem to have a SHOW TABLE or SHOW TABLES command which are specific to MySQL.

    The documentation on the IBphoenix web site states that the SHOW TABLES command is only available in the isql command line tool and nowhere else.

    In MySQL, you can do SHOW TABLES. You can use the same in Firebird's isql command-line tool, but nowhere else.

    It goes on and provides the following SQL code as a roughly equivalent solution:

    SELECT RDB$RELATION_NAME FROM RDB$RELATIONS;

    This query will show you both system and user tables. To select user tables only, use this:

    `SELECT RDB$RELATION_NAME FROM RDB$RELATIONS WHERE RDB$SYSTEM_FLAG = 0;

    Maybe you can get something equivalent from what you were trying to accomplish by querying the RDB$RELATIONS table (or maybe some other runtime information tables provided by Firebird). See also Lorenzo Alberton's post on extracting META information from a Firebird database.

    已采纳该答案
    评论
    解决 无用
    打赏 举报
  • doucha4054 2015-11-25 16:09

    Note than in PHP you should use single quotes $reqest = 'select ...'; otherwise the $ symbol will be translated as PHP variable sign.

    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题