インストール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は= '置き換える'、インデックス=偽)