คำถามติดแท็ก postgresql

PostgreSQL เป็นระบบจัดการฐานข้อมูลเชิงวัตถุแบบโอเพ่นซอร์ส (ORDBMS) ที่พร้อมใช้งานสำหรับแพลตฟอร์มหลักทั้งหมดรวมถึง Linux, UNIX, Windows และ OS X โปรดพูดถึง Postgres รุ่นที่แน่นอนของคุณเมื่อถามคำถาม คำถามเกี่ยวกับการดูแลระบบหรือคุณสมบัติขั้นสูงจะส่งตรงไปที่ dba.stackexchange.com

2
วิธีการวางหลายคอลัมน์ใน postgresql
ฉันต้องการวาง 200 คอลัมน์ในตารางของฉันใน PostgreSQL ฉันเหนื่อย: ALTER TABLE my_table DROP COLUMN col1, col2 แต่ฉันได้รับข้อผิดพลาดเช่นนี้: ข้อผิดพลาด: ข้อผิดพลาดทางไวยากรณ์ที่หรือใกล้ "col2"
144 postgresql 

3
คอลัมน์อาร์เรย์ดัชนี PostgreSQL สามารถได้หรือไม่
ฉันไม่พบคำตอบที่ชัดเจนสำหรับคำถามนี้ในเอกสารประกอบ หากคอลัมน์เป็นประเภทอาร์เรย์ค่าที่ป้อนทั้งหมดจะถูกทำดัชนีแยกกันหรือไม่? ฉันสร้างตารางง่าย ๆ ที่มีหนึ่งint[]คอลัมน์และวางดัชนีเฉพาะลงไป ฉันสังเกตเห็นว่าฉันไม่สามารถเพิ่มอาร์เรย์เหมือนกันได้ซึ่งทำให้ฉันเชื่อว่าดัชนีนั้นเป็นส่วนประกอบของรายการอาร์เรย์ไม่ใช่ดัชนีของแต่ละรายการ INSERT INTO "Test"."Test" VALUES ('{10, 15, 20}'); INSERT INTO "Test"."Test" VALUES ('{10, 20, 30}'); SELECT * FROM "Test"."Test" WHERE 20 = ANY ("Column1"); ดัชนีนี้ช่วยค้นหาหรือไม่

8
Rails: FATAL - การรับรองความถูกต้องแบบเพียร์ล้มเหลวสำหรับผู้ใช้ (PG :: Error)
ฉันกำลังพัฒนาบน Ubuntu 11.10 และ RubyMine นี่คือการตั้งค่าการพัฒนาของฉันสำหรับ database.yml ซึ่ง RubyMine สร้างขึ้นสำหรับฉัน development: adapter: postgresql encoding: unicode database: mydb_development pool: 5 username: myuser password: เมื่อฉันพยายามเรียกใช้แอพฉันได้รับข้อผิดพลาดด้านล่างนี้ดูเหมือนว่าฉันยังไม่ได้สร้างผู้ใช้ 'โครงการ' แต่ฉันจะสร้างผู้ใช้และให้ฐานข้อมูลใน postgres ได้อย่างไร ถ้านี่เป็นปัญหาแสดงว่าอะไรคือเครื่องมือที่แนะนำให้ใช้ใน Ubuntu สำหรับงานนี้ หากนี่ไม่ใช่ปัญหากรุณาแนะนำ Exiting /home/sam/.rvm/gems/ruby-1.9.3-p0@project/gems/activerecord-3.2.3/lib/active_record/connection_adapters/postgresql_adapter.rb:1194:in `initialize': FATAL: Peer authentication failed for user "project" (PG::Error) from /home/sam/.rvm/gems/ruby-1.9.3-p0@project/gems/activerecord-3.2.3/lib/active_record/connection_adapters/postgresql_adapter.rb:1194:in `new' from /home/sam/.rvm/gems/ruby-1.9.3-p0@project/gems/activerecord-3.2.3/lib/active_record/connection_adapters/postgresql_adapter.rb:1194:in `connect' from /home/sam/.rvm/gems/ruby-1.9.3-p0@project/gems/activerecord-3.2.3/lib/active_record/connection_adapters/postgresql_adapter.rb:329:in …

4
PostgreSQL: บทบาทไม่ได้รับอนุญาตให้เข้าสู่ระบบ
ฉันมีปัญหาในการเชื่อมต่อกับฐานข้อมูล postgres ของตัวเองบนเซิร์ฟเวอร์ภายใน ฉัน googled ปัญหาที่คล้ายกันและหาคู่มือนี้ https://help.ubuntu.com/stable/serverguide/postgresql.html ดังนั้น: pg_hba.conf พูดว่า: # TYPE DATABASE USER ADDRESS METHOD # "local" is for Unix domain socket connections only local all all trust # IPv4 local connections: host all all 127.0.0.1/32 md5 # IPv6 local connections: host all all ::1/128 trust จากนั้นฉันสร้างผู้ใช้และกำหนดรหัสผ่านสำหรับมัน: postgres=# create …


15
psycopg2: แทรกหลายแถวด้วยหนึ่งแบบสอบถาม
ฉันต้องการแทรกหลายแถวด้วยหนึ่งแบบสอบถาม (จำนวนแถวไม่คงที่) ดังนั้นฉันต้องดำเนินการแบบสอบถามเช่นนี้: INSERT INTO t (a, b) VALUES (1, 2), (3, 4), (5, 6); วิธีเดียวที่ฉันรู้คือ args = [(1,2), (3,4), (5,6)] args_str = ','.join(cursor.mogrify("%s", (x, )) for x in args) cursor.execute("INSERT INTO t (a, b) VALUES "+args_str) แต่ฉันต้องการวิธีที่ง่ายกว่า


25
Postgresql 9.2 pg_dump เวอร์ชันไม่ตรงกัน
ฉันพยายามดัมพ์ฐานข้อมูล Postgresql โดยใช้เครื่องมือpg_dump $ pg_dump books > books.out ฉันจะได้รับข้อผิดพลาดนี้ได้อย่างไร pg_dump: server version: 9.2.1; pg_dump version: 9.1.6 pg_dump: aborting because of server version mismatch --ignore-versionตัวเลือกที่จะเลิกตอนนี้และมันจะไม่เป็นวิธีการแก้ปัญหา AA กับปัญหาของฉันถึงแม้ว่ามันจะได้ทำงาน ฉันจะอัพเกรดpg_dumpเพื่อแก้ไขปัญหานี้ได้อย่างไร

3
ตั้งค่าเส้นทางสคีมา Postgresql อย่างถาวร
ฉันจำเป็นต้องเส้นทางคีมาตั้งอยู่ใน Postgres schema2.tableเพื่อให้ฉันทำไม่ได้ทุกครั้งที่ระบุเช่นสคี กำหนดเส้นทางสคีมา: SET SCHEMA PATH a,b,c ดูเหมือนว่าจะใช้ได้กับเซสชันแบบสอบถามเดียวบน mac เท่านั้นหลังจากที่ฉันปิดหน้าต่างแบบสอบถามตัวแปรเส้นทางจะตั้งค่าตัวเองกลับเป็นค่าเริ่มต้น ฉันจะทำให้มันถาวรได้อย่างไร?
141 sql  postgresql 


11
วิธีการเลียนแบบ“ การเพิกเฉยการแทรก” และ“ การอัปเดตคีย์ซ้ำ” (sql merge) ด้วย postgresql ได้อย่างไร
เซิร์ฟเวอร์ SQL บางตัวมีคุณสมบัติที่INSERTถูกข้ามไปถ้ามันจะละเมิดข้อ จำกัด ของคีย์หลัก / เฉพาะ ยกตัวอย่างเช่น MySQL INSERT IGNOREมี วิธีที่ดีที่สุดในการจำลองINSERT IGNOREและON DUPLICATE KEY UPDATEใช้ PostgreSQL คืออะไร

3
ฉันจะรับ MIN () ของสองฟิลด์ใน Postgres ได้อย่างไร
สมมติว่าฉันมีโต๊ะแบบนี้: name | score_a | score_b -----+---------+-------- Joe | 100 | 24 Sam | 96 | 438 Bob | 76 | 101 ... | ... | ... ฉันต้องการเลือกขั้นต่ำของ score_a และ score_b กล่าวอีกนัยหนึ่งดังนี้: SELECT name, MIN(score_a, score_b) FROM table แน่นอนผลลัพธ์จะเป็น: name | min -----+----- Joe | 24 Sam | 96 Bob …
140 sql  postgresql  min 

7
Postgres: ล้างฐานข้อมูลทั้งหมดก่อนที่จะสร้าง / เติมข้อมูลอีกครั้งจากสคริปต์ทุบตี
ฉันกำลังเขียนเชลล์สคริปต์ (จะกลายเป็น cronjob) ที่จะ: 1: ถ่ายโอนฐานข้อมูลการผลิตของฉัน 2: นำเข้าดัมพ์ลงในฐานข้อมูลการพัฒนาของฉัน ระหว่างขั้นตอนที่ 1 ถึง 2 ฉันต้องล้างฐานข้อมูลการพัฒนา (ปล่อยตารางทั้งหมดหรือไม่) วิธีนี้ทำได้ดีที่สุดจากเชลล์สคริปต์หรือไม่ จนถึงตอนนี้ดูเหมือนว่านี้: #!/bin/bash time=`date '+%Y'-'%m'-'%d'` # 1. export(dump) the current production database pg_dump -U production_db_name > /backup/dir/backup-${time}.sql # missing step: drop all tables from development database so it can be re-populated # 2. load the backup …

9
ฉันจะรับรายการฟังก์ชันทั้งหมดที่เก็บไว้ในฐานข้อมูลของสคีมาเฉพาะใน PostgreSQL ได้อย่างไร
ฉันต้องการเชื่อมต่อกับฐานข้อมูล PostgreSQL และค้นหาฟังก์ชันทั้งหมดสำหรับสคีมาเฉพาะ ความคิดของฉันคือฉันสามารถค้นหา pg_catalog หรือ information_schema และรับรายการฟังก์ชันทั้งหมดได้ แต่ฉันไม่สามารถทราบได้ว่าชื่อและพารามิเตอร์ถูกเก็บไว้ที่ใด ฉันกำลังมองหาคำค้นหาที่จะให้ชื่อฟังก์ชันและประเภทพารามิเตอร์ที่ใช้ (และลำดับที่ใช้) มีวิธีทำไหม?

3
วิธีการเปลี่ยนประเภทข้อมูลคอลัมน์จากอักขระเป็นตัวเลขใน PostgreSQL 8.4
ฉันใช้แบบสอบถามต่อไปนี้: ALTER TABLE presales ALTER COLUMN code TYPE numeric(10,0); หากต้องการเปลี่ยนประเภทข้อมูลของคอลัมน์จากcharacter(20)เป็นnumeric(10,0)แต่ฉันได้รับข้อผิดพลาด: ไม่สามารถแคสต์คอลัมน์ "code" เพื่อพิมพ์ตัวเลขได้
137 postgresql 

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.