Ruby mysql モジュールを使用しています。
クエリの結果を印刷して、列名を含めたいと考えています。これらの名前の配列を取得する方法を見つけるのに苦労しています。以下に示すような値があります。
result = my.query("select * from foo")
result.each do |行| puts row.join(',') end
助けてくれてありがとう!
result.fetch_fields.each_with_index do |info, i|
printf "--- Column %d (%s) ---\n", i, info.name
printf "table: %s\n", info.table
printf "def: %s\n", info.def
printf "type: %s\n", info.type
printf "length: %s\n", info.length
printf "max_length: %s\n", info.max_length
printf "flags: %s\n", info.flags
printf "decimals: %s\n", info.decimals
end
これはあなたの質問に直接答えないかもしれませんが、データベース抽象化レイヤーをチェックアウトすることで利益が得られるかもしれません. Ruby 用にいくつかありますが、最も注目すべきはActiveRecordです。ActiveRecord は Ruby on Rails フレームワークのモデル部分としてバンドルされていますが、残りの Rails がなくても「スタンドアロン」で使用できます。
これ (または類似のもの) を使用すると、アプリケーションをより迅速かつ正確に作成できます。これは、データベースと通信するための非常に貴重なツール (自分で開発するのに多くの時間を費やすツール) を提供するためです。データベース ベンダーを MySQL から別のもの (たとえば、PostgreSQL や Oracle) に変更することを選択した場合でも、多くのコードを書き直す必要はありません。