有时需要把整个字段的结构信息查询出来,于是我们可以通过
1
|
SHOW
FULL
COLUMNS
FROM
tbl_name
[
FROM
db_name
]
//列出字段及详情
|
然后通过 mysql_fetch_array() 函数就可以了,但是单独这样的话,只会显示第一个字段的详细信息,我们需要统计出字段数量,然后分别循环出来(一开始我就这样,一直找不到原因,只能查出第一个字段,灰常郁闷!),下面是实现代码:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
// 连接数据库
$db
=
mysql_connect
(
&
#039;localhost', 'root', 'root' ) or die ( "数据库连接失败." );
// 选择使用哪个数据库,这里是 test
mysql_select_db
(
&
#039;test', $db ) or die ( "无法打开数据库" );
// 数据库编码方式
mysql_query
(
&
#039;SET NAMES utf8' );
// 选择表名
$table
=
&
#039;test';
// 查找所有字段信息
$sqlColumns
=
mysql_query
(
"SHOW FULL COLUMNS FROM $table"
,
$db
)
or
die
(
"错误或该表不存在"
)
;
// 统计字段总数
$columnNum
=
mysql_num_rows
(
$sqlColumns
)
;
$i
=
0
;
// 循环每个字段
while
(
$i
<
$columnNum
)
{
// 获取每个字段信息信息
$colname
=
mysql_fetch_array
(
$sqlColumns
)
;
// 答应详细字段信息
print_r
(
$colname
)
;
$i
++
;
}
|
下面是相关的sql语句
1
2
3
4
5
6
7
8
9
10
11
12
13
|
SHOW
DATABASES
//列出 MySQL Server 数据库。
SHOW
TABLES
[
FROM
db_name
]
//列出数据库数据表。
SHOW
CREATE
TABLES
tbl_name
//导出数据表结构。
SHOW
TABLE
STATUS
[
FROM
db_name
]
//列出数据表及表状态信息。
SHOW
COLUMNS
FROM
tbl_name
[
FROM
db_name
]
//列出资料表字段
SHOW
FIELDS
FROM
tbl_name
[
FROM
db_name
],
DESCRIBE
tbl_name
[
col_name
]。
SHOW
FULL
COLUMNS
FROM
tbl_name
[
FROM
db_name
]
//列出字段及详情
SHOW
FULL
FIELDS
FROM
tbl_name
[
FROM
db_name
]
//列出字段完整属性
SHOW
INDEX
FROM
tbl_name
[
FROM
db_name
]
//列出表索引。
SHOW
STATUS
//列出 DB Server 状态。
SHOW
VARIABLES
//列出 MySQL 系统环境变量。
SHOW
PROCESSLIST
//列出执行命令。
SHOW
GRANTS
FOR
user
//列出某用户权限
|