2013-03-01 58 views
3

我正在开发基于MySQL的项目,其中我的数据库中有57个表。我需要根据存储的数据从数据库中查找表/表和字段。如何从MySQL中的数据库中查找表和字段

我想在这里描述我的问题。

让我在我的数据库的57个表中的一个字段中有数据“value1”,我只知道在我的数据库中有某处存在数据“value1”,现在基于“value1”我想查找

1)存在哪个表“value1”。 2)该数据存储在哪个字段。

我希望你有我正在寻找的东西。在此先感谢:)

+0

你尝试过什么吗?你想用MySQL还是用Java/C#/ .NET/...做这一切? – araknoid 2013-03-01 07:48:29

+1

http://stackoverflow.com/questions/639531/mysql-search-in-all-fields-from-every-table-from-a-database – Deadlock 2013-03-01 07:53:28

+0

@araknoid 我正在基于PHP和MSQL的CMS上工作,实际上对于开发CMS的支持非常少,所以我想了解一下它的工作流程。 – 2013-03-01 07:56:21

回答

3

你应该看看下面的链接。

http://code.google.com/p/anywhereindb/

OR

<?php 
    $search_word = 'new.example.com'; 
    mysql_connect($host, $username, $password); 

    $connection = mysql_connect('localhost','root','')or die(mysql_error()); 
    $database = mysql_select_db('stackoverflow')or die(mysql_error()); 

    $sql = "SHOW TABLES FROM stackoverflow"; 
    $tables_result = mysql_query($sql)or die(mysql_query()); 



    echo "Look for '$search_word'\n\n"; 
    while ($table = mysql_fetch_row($tables_result)) 
    { 
     echo "Table: {$table[0]}\n"; 
     //serach query for tables $table[0]  
    } 
    mysql_free_result($tables_result); 
?> 

使用mysqli_ *或PDO因为mysql_ *已被弃用。

+0

谢谢Dipesh!让我试试它 – 2013-03-01 08:00:11

+1

您可以在mysql_fetch_row循环中的mysql_fetch_field上添加一个循环,以查找字段名称。 – djleop 2013-03-01 08:00:44

+1

@djleop是的我们可以付出很多努力给他解决办法,如果我为他写每一个代码,那么OP将不会学到任何东西..我最好尝试回答是让OP自己学习.. – 2013-03-01 08:03:22

相关问题