重命名表名

时间:2011-10-19 15:28:42

标签: php

我正在尝试从特定数据库重命名表名。我已尝试使用下面给出的两个查询,但它显示相同的错误消息。我无法理解我的错误。

查询

第一名:

  <?php
$id = $_POST['id'];
$department = $_POST['department'];
$dept_id = $_POST['dept_id'];
$olddept_id = $_SESSION['olddept_id'];

if(isset($_POST['submit']))
{
$order = "UPDATE department SET department='$_POST[department]', dept_id='$_POST[dept_id]' WHERE id='$_POST[id]'";
mysql_query($order) or die (mysql_error());
mysql_query("RENAME TABLE $olddept_id TO $dept_id;") or die (mysql_error());

}

第二个:

  <?php
$id = $_POST['id'];
$department = $_POST['department'];
$dept_id = $_POST['dept_id'];
$olddept_id = $_SESSION['olddept_id'];

if(isset($_POST['submit']))
{
$order = "UPDATE department SET department='$_POST[department]', dept_id='$_POST[dept_id]' WHERE id='$_POST[id]'";
mysql_query($order) or die (mysql_error());
mysql_query("ALTER TABLE $olddept_id RENAME $dept_id;") or die (mysql_error());

}

错误消息是:     “您的SQL语法有错误;请查看与您的MySQL服务器版本对应的手册,以便在第1行的'TO CSEE'附近使用正确的语法”

我想编辑的表名也存储在一个名为“department”的表中。这已成功完成,但表格未重命名。

- 谢谢你

1 个答案:

答案 0 :(得分:0)

显示这些查询生成的确切SQL。我猜你正在使用原始表名的保留字,这意味着你必须用反引号来逃避它:

重新命名reservedword加入CSEE