2013-06-13 21 views
1

我建立了MySQL數據庫的一個自動/通用客戶端管理面板,只需要一個連接字符串和系統動態與驗證所有表創建所有的表格,並創建所有CRUD操作在數據庫中的表,我完成了這一切,做到了OOP,但做的最後一件事就是讓表和字段動態的關係,所以,我怎麼能實現呢?通用管理站點在PHP/MySQL的

最好的問候,

回答

1

看看MySQL的SHOW TABLES ...和SHOW列...語句。

如果您正在尋找外鍵約束,你可以查詢INFORMATION_SCHEMA.TABLE_CONSTRAINTSINFORMATION_SCHEMA.KEY_COLUMN_USAGE

+0

我沒有從表和關於我不會看到的print_r後其關係我看到這個字段的節目列:陣列([0] => Brand_ID [字段] = > Brand_ID [1] => INT(11)[類型] => INT(11)[2] => YES [空] => YES [3] => MUL [關鍵] => MUL [4] => [默認] => [5] => [額外] =>) – test

+0

我已經添加到Lins的覆蓋我所引用的表MySQL的頁面。那裏有很多信息。看看,如果它不是你所需要的,請回來。 – 2013-06-13 09:28:45

0

兩個會幫你出:

SELECT * FROM information_schema.KEY_COLUMN_USAGE WHERE table_schema='<database>' AND REFERENCED_COLUMN_NAME IS NOT NULL 

打印您指定的數據庫的所有外鍵。 可以很容易地用於與外鍵的工作無論如何。

也可能是有益的: Foreign key constraints missing from SHOW CREATE TABLE output

+0

它仍然劑量沒有回答我的問題,因爲我試圖做的一切Dynamiclly,所以我是什麼想的是更新我建立創建窗體類的,但如果它有一個關係,以獲得字段作爲下拉列表其原始值從另一個表 – test

+0

什麼是動態的在你的情況? – DanFromGermany

+0

當我不會創建創建一個表單表動態我創建了一個類檢查所有從MySQL的一個表中的字段,然後我生成HTML領域,所以我用了MySQL的聲明「SHOW COLUMNS FROM TABLE」來獲得字段,但該數組沒有顯示我對任何領域的任何 – test