loading...

Mysql使用Describe命令判断字段是否存在

发布时间:July 25, 2007 分类:MySQL

程序员如何coding个好男人

CSS在IE6,IE7,FIREFOX中的区别

工作时需要取得mysql中一个表的字段是否存在
于是就使用Describe命令来判断
如果大家有别的更好的方式的话
请告诉我哦

mysql_connect('localhost', 'root', 'root');
mysql_select_db('demo');
$test = mysql_query('Describe cdb_posts first');
$test = mysql_fetch_array($test);

$test[0]返回的是该字段的名称,比如我要查询first字段,返回的就是first
如果此字段不存在返回的就是NULL,通过这样可以判断一个字段是否存在

附加资料:

describe命令
一、describe命令用于查看特定表的详细设计信息,例如为了查看guestbook表的设计信息,可用:
describe guestbook

二、可通过"show comnus"来查看数据库中表的列名,有两种使用方式:
show columns form 表名 from 数据库名
或者:
show columns from 数据库名.表名

三、用describe命令查询具体列的信息
describe guestbook id
就是查询guestbook中id字段的列信息

{DESCRIBE | DESC} tbl_name [col_name | wild]
DESCRIBE 是 SHOW COLUMNS FROM 的缩写。DESCRIBE 提供有关一个表的列信息。col_name 可以是一个列名或是一个包含 SQL 通配符字符 “%” 和 “_” 的字符串。没有必要用引号包围字符串。

如果列类型不同于你所期望的基于一个 CREATE TABLE 语句建立的列,注意 MySQL 有时会更改列类型。这个语句是提供给与 Oracle 兼容的。

Tags: none


已有 4 条评论 »

  1. 上网监控 上网监控

    在代码里面怎么实现呢?我用的是c。

  2. kimi kimi

    用C也是一样啊,执行SQL语句获得结果集。

  3. Go_Rush Go_Rush

    用出错信息也可以

    mysql_query("select first from cdb_posts where 1=0");

    然后看 mysql_errno() 出错就表示不存在,不出错就表示存在

    当然,用 Desc cdb_posts first 应该是最好的办法了

  4. vancekq vancekq

    mysql_query("select * from cdb_posts limit 1");
    $test = mysql_fetch_array($test);判断是否var_dump(isset(test['first']));如为false则表示该字段不存在

添加新评论 »

captcha
请输入验证码