sql >> データベース >  >> RDS >> Mysql

PDOから返されたオブジェクトを独自のクラスに設定する

    新しいオブジェクトをフェッチする場合 特定のクラスのPDO::FETCH_CLASSを使用します 。ただし、プロパティ値を既存のオブジェクトに書き込みたい場合 すでにお持ちの場合は、PDO::FETCH_INTOを使用します 、そのように:

     $sth->setFetchMode(PDO::FETCH_INTO, $this);
     $sth->execute();
     $sth->fetch();
    

    書き込みたいプロパティは、直接または__set()を介して、パブリックにアクセス可能である必要があることに注意してください。 魔法の方法。

    ただし、@Truthの回答を慎重に検討する必要があります。同じクラス(ましてや同じオブジェクト)を持つのは良い設計ではありません !)データベースアクセスとレコードの表現の両方に責任があります。承認レコードの管理を担当するクラスと、レコード自体の管理を担当するクラスを用意します。



    1. INSERTINTOとSELECTINTO

    2. 非正規化された列を個別のレコードに選択しますか?

    3. TSQLの関数パラメータの前に「N」を付ける目的は何ですか?

    4. SQLServerでテーブル名の名前を変更する方法