ホームページ >バックエンド開発 >Python チュートリアル >Python操作PostgreSQL
この記事では、Python を使用して PostgreSQL を操作する方法を紹介します。必要な友達は参考にしてください。
PostgreSQL を操作するための Python
前提条件: PostgreSQL データベースがユーザーのコンピューターにインストールされている
psycopg2 をインストールします。 – > pip インストール psycopg2
1. psycopg2.connect(database="testdb"、user="postgres"、password="cohondob"、host="127.0.0.1"、port="5432") この API は、PostgreSQL データベースへの接続を開きます。データベースが正常に開かれると、接続オブジェクトが返されます。 www.yiibai.com
2. connection.cursor() このプログラムは、Python プログラミングを使用してデータベース全体に使用されるカーソルを作成します。いいばい.com
3.cursor.execute(sql [, オプションのパラメータ]) このルーチンは SQL ステートメントを実行します。パラメータ化できる SQL ステートメント (つまり、SQL リテラルではなくプレースホルダー)。 psycopg2 モジュールは、%s でマークされたプレースホルダーをサポートします。 yiibai.com 例:cursor.execute(“insert into people names (%s, %s)”, (who, age))
4. curosr.executemany(sql, seq_of_parameters) このプログラムは SQL コマンドを実行して、すべてのパラメーター シーケンスまたはシーケンス内の SQL をマップします。 www.yiibai.com
5. curosr.callproc(procname[,parameters]) このプログラムは、指定された名前でストレージ データベース プログラムを実行します。プログラムは各引数のエントリを予期しており、引数の順序には 1 つが含まれている必要があります。
6. Cursor.rowcount は、最後の実行
によって変更、挿入、または削除されたデータベース内の行の総数を返す読み取り専用プロパティです。
7. Connection.commit() このメソッドは現在のトランザクションをコミットします。このメソッドを呼び出さない場合、最後に commit() を呼び出してからどのような変更が加えられたとしても、その変更は他のデータベース接続からは認識されません。
8. Connection.rollback() このメソッドは、最後に commit() メソッドが呼び出されてからデータベースに加えられたすべての変更をロールバックします。
9. connection.close() このメソッドはデータベース接続を閉じます。これは自動的に commit() を呼び出すわけではないことに注意してください。最初に commit() メソッドを呼び出さずにデータベース接続を閉じると、すべての変更が失われます。 www.yiibai.com
10.cursor.fetchone() このメソッドはクエリ結果セットの次の行を抽出し、シーケンスを返すか、それ以上データがない場合は何も返しません。
11. Cursor.fetchmany([size=cursor.arraysize]) このルーチンでは、次のグループのクエリ結果の行数を取り出し、リストを返します。レコードが見つからない場合は、空のリストが返されます。このメソッドは、表示されたサイズ パラメーター内でできるだけ多くの行を取得しようとします。
12.cursor.fetchall() このルーチンは、すべてのクエリ結果 (残りの) 行を取得し、リストを返します。空の行がある場合は、空のリストが返されます。 www.yiibai.com
1. データベースに接続
import psycopg2 #导入相关模块 #传入参数 数据库名 用户名 用户密码 主机地址 端口 conn = psycopg2.connect(database="mybase", user="postgres", password="asd123456", host="127.0.0.1", port="5432") print "Ok"
2. データを挿入
import psycopg2 conn = psycopg2.connect(database="mybase", user="postgres", password="asd123456", host="127.0.0.1", port="5432") cur = conn.cursor() #建立操作游标 #传入的参数是 SQL 建表语句 cur.execute('''CREATE TABLE COMPANY (ID INT PRIMARY KEY NOT NULL, NAME TEXT NOT NULL, AGE INT NOT NULL, ADDRESS CHAR(50), SALARY REAL);''') print "ok" conn.commit() #注意,只有commit一下才会生效 conn.close()
5. データを更新
import psycopg2 conn = psycopg2.connect(database="mybase", user="postgres", password="asd123456", host="127.0.0.1", port="5432") cur = conn.cursor() #让它ID自动生成 cur.execute("INSERT INTO COMPANY (NAME,AGE,ADDRESS,SALARY) VALUES ( 'Paul', 32, 'California', 20000.00 )"); #注意这里还可以返回插入数据的ID results = cur.fetchone() ID = results[0] #返回插入的记录的id 便于后续操作 conn.commit() conn.close()
関連する推奨事項:
PostgreSQL データベースに接続する Python メソッド php は PDO 拡張機能を使用して PostgreSQL オブジェクト リレーショナル データベースに接続します php を postgreSql に接続します以上がPython操作PostgreSQLの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。