mysqli可以告诉你字段数据类型和长度设置

时间:2014-06-06 00:14:40

标签: php mysql mysqli

有没有办法让php mysqli返回字段类型和长度。我知道mysqli_result::fetch_fields可以返回类似INT的字段类型,但不能返回设置的长度。

INT(11)

我想让“11”不是当前表中最长的字段记录。

当我运行DESCRIBE table_name时,我得到了我想要的信息。

Field_type(LENGTH)

INT(11)

2 个答案:

答案 0 :(得分:0)

我不懂PHP,但我认为我在评论中提出的建议可以帮助你:

使用describe yourTable获取字段列表,结果将为您提供每个字段的数据类型。

答案 1 :(得分:0)

为什么你不尝试查询DESCRIBE,尝试一下。

$link = new mysqli('localhost', 'username', 'password', 'database');
$query = mysqli_query($link, 'DESCRIBE `your_table_name`');
$desired_column = 'id';
$id = null;
while($result = $query->fetch_assoc()) {
    if($result['Field'] == $desired_column) {
        $field_type = $result['Type'];
        preg_match('#\((.*?)\)#', $field_type, $match);
        $id = $match[1];
    }
}

echo $id; // 11