問題タブ [dbal]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
symfony - doctrine を使用したブール値としての mysql tinyint(2) の不適切なマッピング
symfony2 でデータベースをリバース エンジニアリングし、コマンドで doctrine を作成しました。
しかし、私のフィールドはtinyint(2)ではなくブール値としてマップされました。
ブール値としてマッピングされるのはなぜですか?
php - Doctrine2 クエリの検証とエラー処理
DBALException
条件の明示的なチェックではなく、検証の実行を使用したいと思います。
たとえば、子レコードが「削除制限」を使用して参照を保持している親レコードを削除すると、整合性制約違反が発生します。これは、mysql pdo ドライバーで Doctrine2 DBAL を使用する MYSQL で最新です。
DBALException をキャッチして (これまでのところ成功)、その場で何が起こったのかを判断できるようにしたいと考えています。
私はコードの解決策を求めているのではなく、エラーを処理して正規化するドクトリンのオプションまたは拡張機能を求めています。簡単な例は次のとおりです。
これは PDOException と SQLSTATE エラー コードを使用して問題の概要を把握していますが、十分に具体的ではなく、ODBC に準拠していますが、すべてのデータベースで動作するという保証はありません。
これが必要な理由は、すべての削除手順のすべてのエンティティに対して存在する、または将来存在する可能性のあるすべての参照に対して検証コードを記述できないためです。
自己閉鎖:
これは間違った検証方法であることに気付きました。テスト環境以外ではこの概念を使用しないでください。
php - オブジェクトリレーショナルマッピングとデータベース抽象化レイヤー
ORMとDBALの両方を提供するDoctrineを使用しています。
それらの違いは何ですか?
いつどちらを使用するかをどのように決定する必要がありますか?
mysql - カスタムデータベースを作成するための Symfony 2 コンソールコマンド
各ユーザーが独自のデータベースを持つ Symfony 2 プロジェクトに取り組んでいます。私の config.yml ファイルには、クライアント用に doctrine:dbal:orm が設定されていますが、実行時に設定され、すべてのユーザーによって参照されるため、接続プロパティはありません。つまり、デフォルトの dbal 接続が 1 つと orm-connection が 2 つしかなく、ユーザー数は無制限です。
これは問題なく動作しますが、ユーザーの登録時にデータベースとスキーマを作成する必要があります (FOS UserBundle)。拡張された userbundle コントローラーでは、独自のロジックを配置できます。問題は、新しいユーザーに設定されたパラメーターがないため、「php app/console doctrine:database:create」を実行できないことです。
コンソール コマンドにカスタム データベース パラメータを指定する方法はありますか? おそらく、いくつかの非常に醜いmysqlコマンドでこれを回避できますが、むしろそうはしません。よろしくお願いします!
database - Doctrine DBAL で列の長さを取得する
Doctrine DBAL プロジェクトを使用して、下の表の列の長さを取得しています (この場合、整数の長さは 8 です)。私は ORM を使用しておらず、YML などでスキーマを定義していません。
答えを探しているときに、パラメーターのタイプによっては、いくつかの有用な情報を提供するプロパティがいくつかあるように見えることに気付きました。長さ、精度、スケール。次のコードは、いくつかの列プロパティをリストしていますが、私が探している 8 の長さではありません。この一般的な列のプロパティを見つけるのが非常に難しいことは、私にとって非常に驚くべきことです。
php - Doctrine DBAL を使用した準備済みステートメントの文字列のリスト
Doctrine DBAL のドキュメントに従って、次のように文字列値のリストをバインドできるはずです。
これにより、PHP 通知が表示され、スクリプトが強制終了されます。
私は何か間違ったことをしましたか?
symfony - symfony 2 の 1 つのバンドルのようなサービス
モデル クラス (DBAL を使用する) を作成しようとしていますが、それをバンドル内のサービスのように使用したいと考えています。
バンドルにこの構成でサービスを作成しようとしました:
しかし、実際には、app/config/config.yml でこのサービスを構成したくありません。これは、1 つのバンドルでのみ使用されるためです。
特定のバンドル サービスを作成し、 @database_connection パラメータをクラスに与える方法はありますか? または、すべてのアプリに対して構成する必要がありますか?
ここでの私の目標は、Doctrine ORM/Entity を使用せずに、DBAL のみを使用して、コントローラーとモデルに個別のクラスを持たせることだけです。