mysql判断一个表有无某个字段名

tian428 2010-12-21 10:57:37
现在我要实现 如果表$class[chanpin]没有RADMIN_ENABLE字段, 就添加这个字段, 并且把表中所有数据的该字段都置为1。这个要怎么写?下面写的不太对, 不管原先有没有RADMIN_ENABLE都置1了

@$db->updatequery("ALTER TABLE `".$class[chanpin]."` ADD `RADMIN_ENABLE` VARCHAR( 80 ) NOT NULL AFTER `AUTOCFG_REFRESH`");

@$db->updatequery("update `".$class[chanpin]."` set `RADMIN_ENABLE`='1' where 1");
...全文
322 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
iihero 2010-12-21
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 tian428 的回复:]

4.1的数据库,没有information_schema
[/Quote]
那可以用这个查询:
mysql> show columns from tt;
+---------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+---------+-------------+------+-----+---------+-------+
| id_from | varchar(32) | YES | | NULL | |
| id_to | varchar(32) | YES | | NULL | |
| ctry | varchar(32) | YES | | NULL | |
| cntry | varchar(32) | YES | | NULL | |
| country | varchar(32) | YES | | NULL | |
+---------+-------------+------+-----+---------+-------+
5 rows in set (0.02 sec)
tian428 2010-12-21
  • 打赏
  • 举报
回复
4.1的数据库,没有information_schema
WWWWA 2010-12-21
  • 打赏
  • 举报
回复
打开上述记录集,循环判断
OR
用捕获错误的方法、
OR
用ADO、ADOX方法取得所有字段名
iihero 2010-12-21
  • 打赏
  • 举报
回复
参考一下这个,如果是5.0或以上版本:
mysql> select column_name from information_schema.columns where table_name='tt';
+-------------+
| column_name |
+-------------+
| id_from |
| id_to |
| ctry |
| cntry |
| country |
+-------------+
WWWWA 2010-12-21
  • 打赏
  • 举报
回复
MYSQL 5以上可以查找系统表
ACMAIN_CHM 2010-12-21
  • 打赏
  • 举报
回复
4.1的数据库

你可以直接运行这个 DESC tableName columnName; 看看有没有记录集返回。

56,687

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧