0
  1. 如果可以解决标题中的问题,请指导。我在任何地方都没有找到它。
  2. 如果有可能(删除自动增量字段而不在表中命名它,请指导。
  3. 我可以从extra字段中读取它information_schema.columns并获得它的名称,然后很容易从特定表中删除该列。但我正在寻找更好的解决方案。
  4. 有没有比我的观点更好/更快的解决方案#3

问题(如果还不清楚:)

是否有任何查询/功能可以从数据库中删除所有自动增量列?或者至少有一种方法可以在不知道该列名称的情况下从特定表中删除自动增量列?

我在想这是因为一个表中只能有 0 或 1 个自增列,所以 mysql 可能有一些内置的扩展函数来处理这种类型的字段

4

2 回答 2

1

没有这样的内置函数。您的第 3 点是在 MySQL 中执行此操作的不错选择。您还可以解析desc mytable输出。

于 2012-09-29T21:51:42.280 回答
0

虽然没有内置机制来执行此操作,但您可以编写一个脚本来读取information_schema并生成所有必要的alter table命令。

于 2012-09-29T22:53:08.703 回答