首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >mysqli和字段类型

问mysqli和字段类型
EN

Stack Overflow用户
提问于 2010-06-10 10:28:23
回答 3查看 3.6K关注 0票数 3

我想知道是否有一种简单的方法可以从mysql表中获取具有“正确”数据类型的数据?我的意思是,如果字段类型是INT或SMALLINT,是否可以将这些类型作为整数直接传递给PHP?

我做了一些搜索,找到了mysqli_fetch_fields,但是对于SMALLIT类型是2,对于INT 3依此类推。可以这样做,但它看起来相当笨拙的变通方法。有没有更好的办法?

我使用PHP和mysqli。

谢谢。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2010-06-10 10:45:08

最直接的方法是在mysqli调用的基础上构建您自己的数据库处理程序。

票数 2
EN

Stack Overflow用户

发布于 2011-02-16 08:57:27

http://www.php.net/manual/en/mysqli-result.fetch-field-direct.php

代码语言:javascript
复制
<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* check connection */
if (mysqli_connect_errno()) {
    printf("Connect failed: %s\n", mysqli_connect_error());
    exit();
}

$query = "SELECT Name, SurfaceArea from Country ORDER BY Name LIMIT 5";

if ($result = $mysqli->query($query)) {

    /* Get field information for column 'SurfaceArea' */
    $finfo = $result->fetch_field_direct(1);

    printf("Name:     %s\n", $finfo->name);
    printf("Table:    %s\n", $finfo->table);
    printf("max. Len: %d\n", $finfo->max_length);
    printf("Flags:    %d\n", $finfo->flags);
    printf("Type:     %d\n", $finfo->type);

    $result->close();
}

/* close connection */
$mysqli->close();
?>
票数 1
EN

Stack Overflow用户

发布于 2018-11-26 15:11:57

您可以使用以下代码

代码语言:javascript
复制
SELECT DATA_TYPE FROM INFORMATION_SCHEMA.COLUMNS 
    WHERE table_name = 'yourtablename replace your table name' AND COLUMN_NAME = 'tablecolumnname replace your table column name';

在运行主查询之前和获取数据类型后使用它,然后执行您的操作。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3011257

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档