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

PDOを介したAWSRDSへの接続

    コードが機能するようになりましたが、非常に苛立たしいことに、そもそもなぜコードが機能しなかったのかを理解することはできませんでした。ポート番号を正しく取得できなかったことが関係しているのではないかと思います。おそらく、試してみたときに(意図的にではなく)「誤って」修正されたタイプミスがあったのかもしれません。このコードは現在機能しています(MySQLの場合のみ):

          $dsn = null;
          $options = null;
          $this->host = SYSTEM_CONFIG["database"]["host"];
          $this->type = SYSTEM_CONFIG["database"]["type"];
          $this->name = SYSTEM_CONFIG["database"]["name"];
          $this->user = SYSTEM_CONFIG["database"]["user"];
          $this->pass = SYSTEM_CONFIG["database"]["pass"];
          $this->port = SYSTEM_CONFIG["database"]["port"];
    
          switch ($this->type) {
             case "SQLSRV":
                // Other untested code...
                break;
             default: 
                $dsn = "mysql:host={$this->host};port={$this->port};dbname={$this->name};charset=utf8";
                $options = [
                   PDO::ATTR_PERSISTENT => false,
                   PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
                   PDO::ATTR_EMULATE_PREPARES => false,
                   PDO::ATTR_STRINGIFY_FETCHES => false
                ];
          }
          try {
             $this->pdo = new PDO($dsn, $this->user, $this->pass, $options);
          } catch (PDOException $e) {
             $this->logError($e);
          } catch (Exception $e) {
             $this->logError($e);
          }
    



    1. DBA以外のユーザーを使用してOracleでユーザーを作成するには、どのような権限が必要ですか?

    2. MySQLで列値の出現回数を増やす方法

    3. AmazonAuroraについて知らなかった4つのこと

    4. Django + Python 3+PostgreSQLをAWSElasticBeanstalkにデプロイする