2017-10-01 16 views
0

SQLの教授プログラムを作成しています。学生はデータベースと質問になります。私は、彼らが望みのクエリを書いて、その結果を与えることを可能にしたい。MySQL Select文のカラム名

だから、彼らのようなクエリを記述することが可能である:

SELECT Person.*, Student.ID 
FROM Person JOIN Student JOIN Address 
WHERE Address.housenr > 20 

これは、それがハードカラム名を取得するために

SELECT table_name, column_name 
FROM INFORMATION_SCHEMA.COLUMNS; 

を使用できるようになります。それらの名前をクエリの結果から正しく取得することは非常にうれしいでしょう。それはPHPでそれを行うことは可能ですか?

+0

すぐに、この方法で問題が発生するはずです。ユーザーの間違った列名の選択を制限する計画を立てる私はあなたのプログラムは、彼らがクエリを書く前に情報スキーマを打つ必要がありますと思う。 –

+0

どのAPIを使用してデータベースにアクセスしますか?今のところ – Progman

+0

mysqli。 – Shuumi

答えて

0

fetch_fields()メソッドを使用すると、結果セットの列に関する情報を取得できます。クエリで少なくとも1行が返された場合は、通常のfetch_assoc()メソッドを使用し、返された配列のキーをarray_keys()で読み取ることができます。