開発データベース
データベースを自動的に読み込み、データベースからアフォーダンスを提供して開発とデバッグを支援する軽量の VS Code 拡張機能です。
開発者向けに 💖 で構築されました。
特集記事
最新機能
- Cursor、Windsurf などに接続するための MCP サーバー。
- クイックテーブルアクセス:
Cmd+K Cmd+G
(Mac) またはCtrl+K Ctrl+G
(Windows/Linux) を押すと、任意のテーブルを素早く開くことができます。 - 新しいゼロ構成サポート:DDEVで実行されるアプリケーション
- 新しいゼロ設定サポート: Adonis (Lucid ORM) - MySQL および PostgreSQL
スポンサー
DevDb の以下のスポンサーの皆様に心から感謝いたします。
- Traycer AI - VS Code ワークフローにネイティブに統合された強力な AI アシスタンス。
特徴
- MCP サーバー: AI 搭載 IDE や Cursor、Windsurf などの MCP クライアントにデータベース情報を提供します。
- クイック テーブル オープン コマンド:
Cmd+K Cmd+G
(Mac) またはCtrl+K Ctrl+G
(Windows/Linux) を押すと、任意のテーブルをすばやく開くことができます。 - **設定不要のデータベース自動検出:**データベースを自動的に検出して読み込みます。手動設定は不要です。DDEV、Adonis、Laravel、コンテナ化されたセットアップ(Laravel Sail)などの環境をサポートします。
- **ローカル開発のためのデータベース アフォーダンス:**データベース スキーマを深く理解している DevDb は、Eloquent モデル ファクトリのワンクリック生成など、開発とデバッグに役立つアフォーダンスを提供できます。
- 強力な IDE 統合: DevDb はデータベースを IDE と適切に統合し、コンテキスト メニューや CodeLens 統合などの非常に便利な IDE ベースの機能をエディター内で直接提供し、コードからテーブルを開いたり、クエリ最適化タスクの作業時にSQL クエリ説明を呼び出したりする機能を提供します。
- **直感的な UX を備えた豊富なデータベース クライアント:**ワンクリックでのデータ参照、インライン編集、削除、ワンクリックでの再接続などを実行できる専用のデータベース クライアント ビュー。レスポンシブなインターフェイス内で、簡単に変更したり、値を null に設定したり、複雑な JSON データをプレビューしたりできます。
- **データのエクスポート:**テーブル データを、クリップボードにコピーされたりファイルに保存されたりして、適切にフォーマットされた JSON または SQL INSERT ステートメントとしてエクスポートします。
- 包括的なマルチデータベース サポート: SQLite、MySQL、MariaDB、PostgreSQL、Microsoft SQL Server とシームレスにインターフェイスします。今後さらに多くのデータベースがサポートされる予定です。
- **直感的な構成システム:**自動ゼロ構成が利用できない環境では、DevDb は、適切にフォーマットされたテンプレートを生成するクイック スニペットと、JSON スキーマ検証 IntelliSense を提供します。これらを合わせると、データベースに接続するための構成ファイルの作成が素晴らしいエクスペリエンスになります。
- 統合フレームワーク&ツールサポート: Laravel、DDEV、Adonisといった人気のフレームワークとツールに特化したサポートにより、シームレスな開発エクスペリエンスを実現します。お使いの環境に合わせた特別な機能が必要ですか?お気軽にご相談ください!
- クロスプラットフォームの互換性: Linux、macOS、Windows で一貫して動作するように設計されており、これらすべてのプラットフォームで作業を継続できるため、最大限の柔軟性が確保されます。
スクリーンショット
要件
- VS Code 1.83以降
- サポートされているデータベースのいずれかを使用する VS Code プロジェクト
OS/プラットフォームのサポート
- Linux *(Linux-x64、Linux-arm64、Linux-arm、Alpine-x64)
- macOS (Darwin-x64、Darwin-arm64 Apple Silicon)
- Windows (Win32-x64)
クイックスタート
- サポートされているデータベースのいずれかを使用する VS Code プロジェクトでは、データベースが適切に構成され、アプリケーション コードからアクセスできることを確認します。
- ゼロ構成環境の場合、DevDb はデータベースを自動的に検出し、自動読み込みします。スクリーンショットのように DevDb ビューを開くか、ショートカットを使用してデータベースを表示します。
[!NOTE] DevDbはいくつかの言語とフレームワークの統合も提供します
UIアクションとキーマップ
Cmd + K + D
でビューパネルを切り替えますCmd + K + G
でテーブルへ移動- サイドバーのテーブル名を
Cmd + Click
、現在のタブでテーブルが開きます。 Cmd + Click
編集します- 任意の値をクリックすると、ペインでプレビューされます(整形された JSON 文字列値を表示するのに便利です)
- 右側のペインには、現在のテーブルスキーマまたは選択した値を表示するオプションがあります。
- 編集セッション中(データの編集/削除中にアクティブ化)には、スクリーンショットに示すようにコントロールボックスが表示されます。
- 編集セッション中:
Cmd + Z
で変更を元に戻す、Cmd + Y
で変更をやり直す、Cmd + S
で変更を保存する - 「新機能を提案」ボタンを追加しました
ワンクリックアクション(データ操作)
- 表の行を削除するには、ゴミ箱アイコンをクリックします。
- データベース値の
Set null
ボタンをクリックすると、値がnull
に設定されます。
サポートされているデータベース
現在サポートされているデータベース:
- SQLite
- MySQL
- マリアDB
- PostgreSQL
- マイクロソフトSQLサーバー
データベースの読み込み
DevDbは、VS Codeワークスペース(ゼロ設定モード)からの接続情報を使用して、データベースを自動的に検出し、読み込むことができます。このゼロ設定の自動検出が利用できない場合は、設定ファイルオプションが提供されます。
1. ゼロ構成(自動データベース検出)
ワークスペース ルートに次のいずれかが含まれている場合、構成ファイルは必要ありません。
- DDEVによって管理されるアプリケーション
- MySQL と PostgreSQL のデフォルトの .env 設定を使用するAdonis (Lucid ORM を使用)
- デフォルトのローカルSQLiteデータベースを備えたLaravel
- MySQL/MariaDB、PostgreSQL、Microsoft SQL Server 用のデフォルトの .env 設定を備えた Laravel
- デフォルトの .env/docker-compose.yml 設定を備えたコンテナ化された Laravel MySQL (Laravel Sail) (開発コンテナのサポートを含む)
2. 設定ベースのデータベース読み込み
ご使用の環境でゼロ構成サポートが利用できない場合は、データベース接続の詳細を含む.devdbrc
ファイルをプロジェクト ルートに作成します。
[!警告]
.devdbrc
設定ファイルを.gitignore
に追加して、バージョン管理から除外してください。これにより機密情報が保護され、チームメンバーは異なるデータベース設定を使用できるようになります。
設定ファイルには、データベース接続オブジェクトの配列が1つ含まれている必要があります。DevDbは、 .devdbrc
に豊富な編集機能を提供します。
- JSONスキーマ検証:自動構成検証
- IntelliSense :
type
を含むすべてのフィールドの自動補完 - スニペット: クイック構成テンプレート:
devdb mysql
: MySQLの設定devdb mariadb
: MariaDB の設定devdb postgres
: PostgreSQLの設定devdb sqlite
: SQLite の設定devdb mssql
: Microsoft SQL Server の構成
設定ファイルの例
ツールとフレームワークの統合
コンテキストメニューエントリ
任意のフレームワーク/プログラミング言語のエディターから名前/モデル/エンティティを右クリックして、DevDb で任意のデータベース テーブルを開きます。
Node.jsアプリの例
ララベル
Eloquentモデルコードレンズ
DevDb は、次の Code Lens 機能を提供します。
- Eloquentモデルの基礎となるテーブルの表示
- モデルのファクトリーを生成する(基礎となるテーブルから実際のデータが自動的に事前入力される)
[!NOTE] ファクトリー生成はコンテキストメニューからも利用できます
クエリの説明
Query Explainer はMySQL Visual Explainと統合され、MySQL のクエリ実行プランを分析して SQL クエリを最適化します。使用方法:
- SQLクエリ(Eloquentまたは
DB
ファサード)を含むLaravel PHPファイルを開きます。 - 分析するSQLクエリを選択する
- コードレンズの
Explain query
をクリックするか、コンテキストメニューからExplain query
を選択します。 - ブラウザで説明を表示するか、URLをコピーしてください
[!NOTE] VS Code のマルチルートワークスペースのサポートは現在開発中です。進捗状況はこちらでご確認ください。
MCP構成
- スクリーンショットに示すように、ハンマーアイコンをクリックして MCP 設定をコピーします。
- IDE の MCP 設定ファイル (例:
.vscode/mcp.json
、windsurf/mcp_config.json
など) に、コピーした JSON を利用可能な MCP サーバーの 1 つとして貼り付けます。
これで、IDE/AI ツールはデータベースの詳細を使用できるようになります。
URI ハンドラー
DevDbは、外部アプリケーションやリンクから特定のデータベーステーブルを直接開くためのカスタムURIハンドラを提供します。これは、DevDbを他のツールと統合したり、頻繁にアクセスするテーブルへのショートカットを作成したりする際に便利です。
URI形式
URI 形式は次のパターンに従います。
パラメータ:
connectionId
: データベース接続のIDdatabase
: データベース名table
: 開くテーブル名workspace
: (オプション) ワークスペースのパスauthority
: (オプション) URIの権限
サポート
DevDbの開発は、開発への貢献やスポンサーシップを通じて支援できます。特典付きのDevDbスポンサーシップを歓迎いたします。ご利用可能なスポンサーシップのオプションについては、スポンサーシップページをご覧ください。
また、既存のスポンサーが提供する素晴らしいサービスをご利用いただくか、購読していただくことで、スポンサーの皆様に「ありがとう」をお伝えし、サポートしていただければ幸いです。
貢献
[!IMPORTANT] 現在、貢献は拡張機能のコア コードに限定されています。UI コードは一般公開できません。
- このリポジトリをフォークし、フォークしたリポジトリをローカルにクローンします
- 依存関係をインストールするには
bun install
実行します。 - コードベースに貢献しましょう
F5
キーを押してデバッガーを起動し、ローカルで変更をテストします。bun run test-services
でテストスイートを実行し、すべてのテストが合格することを確認します。- フォークに変更をプッシュする
- このリポジトリにPRを開く
- お花を持って行ってください!💐🌺🌹