postgreのインストールと使用(R&パイソン)

インストールpostgre

http://helianthus-code.lofter.com/post/1dfe03e0_1c68233aa

ここでは、より良いオプションC

 

ここでは、パスワードは、パスワードの黒です

私はいくつかのファイルを作成するために、内側にF-アップのためのデータを選択する際に最初にそれをインストールしたときに、エラーを繰り返しチェックし、見つかった、あなたは、削除されたフォルダ全体のデータに戻って新しい空のデータのフォルダを作成する必要があり、成功した場合に再作成

 

ネットワークを変更した後postgreを開始しません

OperationalError :(psycopg2.OperationalError)は、サーバーに接続できませんでした:接続が拒否されました(0x0000274D / 10061)

サーバーは、「127.0.0.1」のホスト上で実行されていると受け入れています

ポート5432上のTCP / IP接続の?

アプローチ:PostgreSQLでサービスを再起動します

CD C:\プログラムファイル\のPostgreSQL \ 10 \ binに

pg_ctlがスタート

pgctl_restartを変更しないで開始

 

 

新しい列を追加します。

varchar型DESCR ALTER TABLEのschema_a.table_aの追加列

 

どのように設定し、自動インクリメントIDへ

最終的に解決見て2時間

まずシーケンスを設定しました

使用されていないのnextvalでのデフォルト設定が、上に確立するために、一連の手順は、次のクエリと実行の設立後、英語コラムはまだ最終的にヌルの後に発見されたPostgreSQLのシーケンスを設定した後、私の検索で、便利です私は英語の検索のstackoverflowを指示することを決めたいかなる問題、公式文書には何の問題も解決しなかった次の出会いをpostgre

 

1 WITH ALTER SEQUENCEシーケンスRESTART。
セットID = NEXTVAL( '配列')report_basic_info UPDATE。

 

 2つのリンクをStackOverflowの:

 

R&postGRE

パッケージ

ライブラリー(RPostgreSQL)

次いで、データベースと所定の符号化に接続

DRV < - dbDriver( "PostgreSQLの")
CON < - dbConnectの(DRV、ホスト= "localhost"を、ユーザー= "postgresの"、パスワード= "#"、DBNAME = "postgresの")
postgresqlpqExec(CON、「SET CLIENT_ENCODING =「GBK "」)

インポートテーブル

com_info = dbSendQuery(CON、声明= 'listed_company SELECT * FROM')
com_info < - (com_infoを、N = -1)フェッチ

 データベースに格納されたデータ

dbWriteTable(CON、 "MyDataに"、のMyData)

 

パイソン&postGRE

基本SQLAlchemyの

#インポートパッケージ
SQLAlchemyのインポートcreate_engineから
インポートPANDAS AS PD 
文字列インポート・テンプレートから
#初期化エンジン
エンジン= create_engine( 'postgresqlの+ psycopg2 ://' + pg_username + ':' + pg_password + '@' + pg_host + ':' + STR 
    pg_port)+ '/' + pg_databaseのような)
query_sql = "" " 
      $ arg1にSELECT * FROM 
      " "" 
query_sql =テンプレート(query_sql)テンプレートメソッド#

DF = pd.read_sql_query(query_sql .substitute(引数1 =テーブル名)、エンジン)# パンダの値でデータベースを読み取る方法

to_sql方法と#パンダは非常に便利(データフレームオブジェクト直接ストレージ)である
df.to_sql(表、エンジン、if_exists =「置き換え」、インデックス=偽)#カバー記憶
df.to_sql(テーブル、エンジン、if_exists = 'APPEND '、インデックス= False)が# 増分ストレージ

 

 

基本psycopg2

テーブルを作成します。1.

#!は/ usr /ビン/ pythonimport psycopg2 

CONN = psycopg2.connect(データベース= "TESTDB"、ユーザー= "postgresの"、パスワード= "pass123"、ホスト= "127.0.0.1"、ポート= "5432")オープン」の印刷データベースに成功し、」

CUR = conn.cursor()
cur.execute( '' 'TABLEの会社を作成
       (ID INT PRIMARY KEY NOT NULL、
       NAMEのTEXT NOT NULL、
       AGE INT NOT NULL、
       ADDRESSのCHAR(50)、
       SALARY REAL);'」 「) "表が正常に作成された"印刷

conn.commit()()
はconn.closeを

 

2.レコードの挿入

cur.execute( "INSERT INTO COMPANY(ID、NAME、年齢、住所、SALARY)\ 
      VALUES(1、 'ポール'、32 'カリフォルニア'、20000.00)");

 

3.select

cur.execute( "SELECT ID、名前、住所、会社の給与")
行の行の行= cur.fetchall():プリント"ID ="行[0] "NAME ="行[1]を印刷します"ADDRESS ="行[2]印刷"SALARY ="行[3]、 "\ n"は"操作が正常に行わ"印刷。
conn.close()

 

4.アップデート

cur.execute( "UPDATE COMPANYセットSALARY = 25000.00 ID = 1")
conn.commitの
印刷"更新された行の合計数:"、cur.rowcount 

cur.execute( "SELECT ID、名前、住所、会社の給与")
行の行の行= cur.fetchall():プリント"ID ="、行[0] "NAME ="行[1]印刷"ADDRESS ="印刷、行[2] "SALARY ="行を印刷します[ 3]、「\ n」「この操作が正常に行われ、」印刷。
conn.close()

 

5. [削除]

cur.execute( "ID = 2 COMPANYから削除する。")
conn.commitの
印刷"行の合計数は削除:"、cur.rowcount 

cur.execute( "SELECT ID、名前、住所、会社の給与")
行=行の行のcur.fetchall():プリント"ID ="、行[0] "NAME ="を印刷し、行[1] "アドレスは="、行[2]印刷"SALARY ="印刷、行[3] 、「\ n」「この操作は正常に行われ、」印刷。
conn.close()

 6. I独自のテンプレート

# - * -コーディング:GBKを- * - 
NPのようインポートnumpyの
PDのように輸入パンダ
輸入psycopg2 
SQLAlchemyの輸入create_engineから
文字列のインポートテンプレートから
再インポート
db_engine = create_engine( 'postgresqlの://はpostgres:###@127.0.0.1:5432 / postgresの)#初始化引擎

 

X = pd.read_csv( 'report_basic_info.txt'、区切り文字= "\ T")
テーブル= 'report_basic_info' 
x.to_sql(テーブル、db_engine、if_existsは= '置き換える'、インデックス=偽)

 

 

 

 

おすすめ

転載: www.cnblogs.com/yuxuan320/p/12527400.html
おすすめ