[編集:より良い答えのチャンスがまだあると感じているので、私は賞金を授与しましたが、質問はしませんでした。]
私は通常、MySQLデータ入力インターフェースをphpでコーディングします。
しかし、Web側に焦点を当てたい(データベースからデータをプルする)クイックプロジェクトでは、MySQLのフロントエンドフォームを探しています。理想的には、これは既成のWinまたはOSXプログラムであり、友人やクライアントにデータをフォームに入力できるように渡すことができます。
例
上記の行は質問を要約したものですが、「phpMyAdminを与えるだけ」またはMySQLへの他のWebインターフェイスが一般的に機能しない理由を示す典型的な状況がここにあります。
画像とアルバムの2つのメインテーブルがあります。3つ目は、画像とアルバムを関連付ける連想テーブルです。
画像: id(PK)、ファイル名
アルバム: id(PK)、アルバム
Album_Image: id(PK)、imageid、albumid(これらは外部キーです:ImagesテーブルとAlbumsテーブルの2つのid PK)
大規模なプロジェクトの場合、非常に快適でカスタマイズされた方法でデータを編集できる優れた「バックエンド」インターフェイス(CRUD)をコーディングしてもかまいません。
友人の画像ギャラリーなどの小さなプロジェクトの場合、データベースからデータをプルするWebインターフェイスである「フロントエンド」のみをプログラムできるようにしたいと思います。バックエンドについては、理想的には、友人が画像、アルバム、および画像とアルバムの関連付けを入力できるように、既成のソリューションを提供したいと思います。昔(私はDBaseIIIを考えています)、物事のそのエントリー側を行うためのインターフェースを与えることは本当に簡単でした。
これが私が試した大まかなアプローチです。親テーブルに結合された連想テーブルのビューを設定したので、次のクエリを使用して、albumid、imageid(PK)およびalbum、filename(親の関連フィールド)が表示されます。
SELECT albumid, imageid, album, filename FROM album_image axi
JOIN albums a ON a.`id` = axi.`albumid`
JOIN images i ON i.`id` = axi.`imageid`
この大雑把なアプローチのアイデアは、私の友人がビューを介して連想テーブルに親PK(albumidとimageid)を入力し、Insertを押した後、完全な親フィールド(ファイル名とアルバム)がビューに表示されるというものです。視覚的なフィードバック。SQLyog(Win)、HeidiSQL(Win)、Sequel Pro(OSX)の3つのGUIツールでこのビューを試しました。
HeidiとSequelProでは、ビューを編集する方法が見つかりませんでした。
SQLyogでは、ビューのPKフィールド(albumidとimageid)を編集でき、「refresh」を押すと親フィールド(albumとfilename)が正しく表示されます。それは素晴らしいことです。ビューに3つのテーブルが表示されていても、1つのテーブルから編集しているだけなので機能します。しかし、SQLyogは3つのテーブルのどれから削除しようとしているのかわからないため、行を削除できません。一方、SQLyogでは、ビューを作成するのと同じクエリを含む[クエリ]タブで挿入と削除の両方を行うことができます。この種類のタブでは、SQLyogで編集中のテーブルを選択できるためです。これは機能しますが、このワークフローは私の友人にとって少し複雑になり始める可能性があります。彼女はSQLyogを開き、接続し、保存されたクエリを開き、クエリ内で編集する適切なテーブルを選択し、他のすべての適切な動きを行う必要があります。
MySQL用のフォームを作成するのに本当に優れている既存のツールを知っている人がいるかどうか疑問に思います---理想的にはWindowsまたはOSXバイナリです。Webソリューションを検討しますが、フレームワークには興味がありません---重要なのは展開の速度です。フレームワークルートを使用する場合は、独自のCRUDライブラリを使用してインターフェイスを作成することをお勧めします。繰り返しになりますが、コーディングすることはできますが、この種の「迅速なプロジェクト」の目標は、ワークロードをフロントエンド(データベースへのWebインターフェイス)に集中させ、バックエンドを既成のツールに任せることです。
洞察を得る前にヒープに感謝します。:)
編集:NavicatやMySQLWorkbenchについて誰も言及していないようです。私も試したことがないので、誰かが頭のてっぺんからそのトリックをするかどうか知っているかどうか疑問に思います。