Closed. This question needs details or clarity。它目前不接受答案。
想改进这个问题吗?添加细节并通过editing this post澄清问题。
两年前关闭。
我想做的是:
我得到了“t01”表
+----+-------------+-----+
| ge | f0          |  f1 |
+----+-------------+------
|  1 | 10          |  5  |
|  2 | 2           |  4  |
|  3 | 58          |  88 |
|  4 | 66          |  9  |
+----+-------------+-----+

另一张表t02:
+----+-------------+------+-----+
| ge | f0          |  f1  | f2  |
+----+-------------+------+-----+
|  1 | 1           |  75  |  10 |
|  2 | 25          |  74  |  55 |
|  3 | 5           |  788 | 66  |
|  4 | 6           |  79  | 11  |
+----+-------------+------+-----+

另一个表tFE
+----+-------------+---------+
| ge | f0     | f1    |  f2  |
+----+-------------+---------+
|  1 | t01    |  f0   |  Code|
|  2 | t01    |  f1   |  City|
|  3 | t02    |  f0   |Number|
|  4 | t02    |  f1   | Index|
|  5 | t02    |  f2   | CIP  |
+----------------------------+

我想做的是这样的事:
表t01:
+----+-------------+-----+
| ge | Code        | City|
+----+-------------+------
|  1 | 10          |  5  |
|  2 | 2           |  4  |
|  3 | 58          |  88 |
|  4 | 66          |  9  |
+----+-------------+-----+

表t02:
 +----+-------------+------+-----+
| ge | Number      |Index | CIP |
+----+-------------+------+-----+
|  1 | 1           |  75  |  10 |
|  2 | 25          |  74  |  55 |
|  3 | 5           |  788 | 66  |
|  4 | 6           |  79  | 11  |
+----+-------------+------+-----+


我有上百个像t01、t02这样的表,其中一些表的列更多,它们的列的名称在tFE中,我想用它们在tFE中的真实名称替换它们的列名称f0、f1

最佳答案

我可以建议您使用脚本来更改您熟悉的任何语言中的列名称。我用PHP演示了这个问题。
使用以下命令从表tFE获取所有数据:

SELECT * FROM `tFE`;

对上述查询的结果进行迭代。
foreach($results as $result) {
    $tableName = $result[0]['fo'];
    $oldColumn = $result[0]['f1'];
    $newColum = $result[0]['f2'];
    // Run following query to change the columnName using PDO
    "ALTER TABLE {$tableName} Change  {$oldColumn} {$newColumn} ["Data Type"];"
}

07-24 18:57