如何使用PHP了解数据库字段的数据类型?

时间:2011-11-11 02:30:28

标签: php solr sqldatatypes

我想知道如何使用PHP获取SQL数据库中每个字段的数据类型; 我想使用此数据类型在SOLR中创建一些文档。

例如:

if (datatype == int) then "[field_name] + _i".

因此,如果我有字段bedrooms且数据类型为integer,则在SOLR中我将此字段保存为bedrooms_i

3 个答案:

答案 0 :(得分:2)

您可以使用mysql_fetch_field()检索有关字段的元数据。

mysql_connect('localhost','user','password');
mysql_select_db('database');

$sql = "SELECT * FROM  your_table";
$result = mysql_query($sql);    

$i = 0;
while ($i < mysql_num_fields($result))
{
    $meta = mysql_fetch_field($result, $i);   
    echo "<pre>".print_r($meta,TRUE)."</pre>";
    $i++;
}

此处$meta->type会为您提供字段类型。

答案 1 :(得分:0)

在MySQL中,您可以使用SHOW COLUMN S获取表格中所有字段/列的名称,数据类型等。

答案 2 :(得分:0)

为了论证,我会假设MySQL。

SELECT COLUMN_NAME, DATA_TYPE, {ETC...}
FROM information_schema.COLUMNS
WHERE TABLE_SCHEMA = 'your_database' AND
    TABLE_NAME = 'your_table'