我正在尝试创建一个动态形式的输入来注册用户,所以我需要选择我在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_main.user_tab_columns'不存在
告诉我我的数据库中没有这个表
所以可以帮助我,谢谢。
答案 0 :(得分:0)
MySQL在 information_schema
数据库中提供架构信息。
(USER_TAB_COLUMNS
是特定于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;