3

我正在创建一个站点的管理面板。当管理员输入一个类别时,在数据库中创建一个相同类别名称的表,字段都是相同的..在启动管理员时输入很多类别..那么我该如何检查已经在数据库中创建了一个表..因为所有表都是空的。为了那个原因

我正在尝试这段代码

     <?php $con = mysql_connect("localhost","root","");
     if (!$con)
     {die('Could not connect: ' . mysql_error());}
   $sql="SELECT * FROM admin";//(for trial im a changing the name manuaaly)

    $result=@mysql_query($sql);

  if (!$result)

      {
        echo "No table exists";
     }
      else
      {
     echo "yes";
     }
    ?>

但在这它总是显示“不存在表”,如果表在数据库中..我该如何解决这个..

4

2 回答 2

3

不要为每个类别创建单独的表!
将其设为一个,包含所有字段集和一个具有类别名称(或类别 ID,取决于数据库模式)。

这就是数据库如何工作的基础知识。

因此,您只需运行常规查询即可检查此类类别名称是否已存在:

SELECT id FROM categories WHERE name = 'name to check';
于 2013-02-17T05:10:43.660 回答
-1

看看INFORMATION_SCHEMA架构,特别是TABLES

IE:

SELECT 1 FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_NAME = `admin_table_name`;
于 2013-02-17T05:00:42.940 回答