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

複雑なパスワードでパスワード認証が失敗する

    この場合のパスワードの円記号は、エスケープ文字として解釈されます。 Pythonは\wのバックスラッシュを処理します リテラル\として \wのため、生の文字列として指定されていない場合でも は有効なエスケープシーケンスではありませんが、基になるライブラリもエスケープシーケンスを解析します したがって、円記号はエスケープ(2倍)する必要があります。

    これを回避するには、接続パラメータをキーワード引数として指定します 代わりに:

    psycopg2.connect(host=HOST,
                     database=DATABASE_NAME,
                     port=DATABASE_PORT,
                     user=DATABASE_USER,
                     password=DATABASE_PASSWORD)
    

    これにより、パスワードの特殊文字に関する問題が回避されます。また、パスワードに一重引用符を付けると、接続文字列が切断されます。




    1. Oracle SQLの一意性制約AからB、BからA

    2. AmazonRedshiftでの16進文字列から整数への変換

    3. トークスライド:PostgreSQL11でのパーティション分割の改善

    4. UNIXタイムスタンプを日付と日時に変換します-SQL/ORACLE