Php 用户\选项卡\列不存在

Php 用户\选项卡\列不存在,php,mysql,sql,Php,Mysql,Sql,我正在尝试创建一个动态形式的输入来注册用户,所以我需要选择username-email-password等users表中的列。所以我从一些问题中得到了这个代码 $query = " SELECT table_name, column_name, data_type, data_length "; $query.=" FROM USER_TAB_COLUMNS "; $query.=" WHERE table_name = 'user_type' "; $result= mysqli_query(

我正在尝试创建一个动态形式的输入来注册用户,所以我需要选择username-email-password等users表中的列。所以我从一些问题中得到了这个代码

$query = " SELECT table_name, column_name, data_type, data_length ";
$query.=" FROM USER_TAB_COLUMNS ";
$query.=" WHERE table_name = 'user_type' ";
$result= mysqli_query($db, $query)

if (mysqli_num_rows($result) > 0) {
while ($row = mysqli_fetch_assoc($result)) {
    print_r($row);
} //end while
  } //end if
如果我在PHP中应用这个,我会得到

mysql_num_rows期望参数1是资源,布尔值在

这意味着select语句可能不起作用。 但当我将其应用于phpMyAdmin SQL时,它给出了这个错误

表“final\u main.user\u tab\u columns”不存在


这说明我的数据库中没有这个表,MySQL在信息模式数据库中提供模式信息

用户选项卡列是Oracle特有的视图;在MySQL中不存在

要获取特定MySQL表中列的信息,可以使用以下方法:

SELECT c.column_name
     , c.column_type
     , c.data_type
     , c.character_maximum_length
     , c.numeric_precision
     , c.numeric_scale
  FROM information_schema.columns c
 WHERE c.table_name    = 'user_type'    -- table name
   AND c.table_schema  = 'final_main'   -- database name
 ORDER BY c.ordinal_position;

您似乎混合了mysql_uu和mysqli_uuu函数。您确定创建的表的名称正确吗,即“USER_TAB_COLUMNS”?嗯。。。您的错误消息从字面上回答了您自己的问题。创建包含所需列的表,然后查询将正常工作。您的mysqli_查询返回FALSE,因为它在查询失败时返回FALSE,因此您的错误消息也很明显DB@MarkBaker我正在处理Mysqli本地主机数据库