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

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


6
PostgreSQL - เปลี่ยนชื่อฐานข้อมูล
ฉันต้องการเปลี่ยนชื่อฐานข้อมูล แต่เมื่อฉันทำในฐานข้อมูล PGAdmin : ALTER DATABASE "databaseName" RENAME TO "databaseNameOld"บอกว่าทำไม่ได้ ฉันจะทำมันได้อย่างไร? ( เวอร์ชัน 8.3 บน WindowsXP ) ปรับปรุง ข้อความแสดงข้อผิดพลาดแรก: ไม่สามารถเนื่องจากฉันเชื่อมต่ออยู่ ดังนั้นฉันจึงเลือกฐานข้อมูลอื่นและทำการสืบค้น ฉันได้รับข้อความแสดงข้อผิดพลาดครั้งที่สองแจ้งว่ามีผู้ใช้เชื่อมต่อ ฉันเห็นในPGAdminหน้าจอว่ามันมีมากมายPIDแต่มันไม่ได้ใช้งาน ... ฉันไม่เห็นวิธีการฆ่าพวกมัน
127 sql  postgresql 

3
ค้นหาความแตกต่างระหว่างการประทับเวลาเป็นวินาทีใน PostgreSQL
ฉันมีตารางที่PostgreSQL 8.3มี 2 timestampคอลัมน์ ฉันต้องการรับความแตกต่างระหว่างสิ่งเหล่านี้timestampsในไม่กี่วินาที คุณช่วยฉันหน่อยได้ไหมว่าต้องทำอย่างไร TableA ( timestamp_A timestamp, timestamp_B timestamp ) ฉันต้องการที่จะได้รับสิ่งที่ต้องการ(timestamo_B - timestamp_A)ในไม่กี่วินาที(ไม่เพียง แต่ความแตกต่างระหว่างวินาทีก็ควรจะรวมถึงชั่วโมงนาที ฯลฯ )
127 postgresql 

5
แบบสอบถาม Postgresql ระหว่างช่วงวันที่
ฉันพยายามสอบถามฐานข้อมูล postgresql ของฉันเพื่อส่งคืนผลลัพธ์ที่วันที่อยู่ในเดือนและปีที่แน่นอน กล่าวอีกนัยหนึ่งฉันต้องการค่าทั้งหมดสำหรับเดือนต่อปี วิธีเดียวที่ฉันทำได้จนถึงตอนนี้คือ: SELECT user_id FROM user_logs WHERE login_date BETWEEN '2014-02-01' AND '2014-02-28' ปัญหาคือฉันต้องคำนวณวันที่แรกและวันที่สุดท้ายก่อนที่จะค้นหาตาราง มีวิธีที่ง่ายกว่านี้ไหม ขอบคุณ
127 sql  postgresql  date  between 

2
ใหญ่แค่ไหนสำหรับตาราง PostgreSQL?
ฉันกำลังดำเนินการออกแบบโครงการ RoR สำหรับ บริษัท ของฉันและทีมพัฒนาของเราได้พบกับการถกเถียงกันเล็กน้อยเกี่ยวกับการออกแบบโดยเฉพาะฐานข้อมูล เรามีรูปแบบที่เรียกMessageว่าต้องคงอยู่ เป็นโมเดลขนาดเล็กมากที่มีคอลัมน์ db เพียงสามคอลัมน์นอกเหนือจาก id แต่จะมีโมเดลเหล่านี้จำนวนมากเมื่อเราไปที่การผลิต เรากำลังดูการแทรกมากถึง 1,000,000 ครั้งต่อวัน โมเดลจะถูกค้นหาโดยคีย์ต่างประเทศสองคีย์เท่านั้นซึ่งสามารถจัดทำดัชนีได้ เช่นกันแบบจำลองไม่จำเป็นต้องถูกลบ แต่เราไม่จำเป็นต้องเก็บไว้เมื่อมันมีอายุประมาณสามเดือน ดังนั้นสิ่งที่เราสงสัยคือการใช้ตารางนี้ใน Postgres จะทำให้เกิดปัญหาด้านประสิทธิภาพที่สำคัญหรือไม่? ใครมีประสบการณ์เกี่ยวกับฐานข้อมูล SQL ขนาดใหญ่มากช่วยบอกเราได้หรือไม่ว่าปัญหานี้จะเป็นปัญหา? ถ้าเป็นเช่นนั้นเราควรเลือกทางเลือกใด

13
จะรีเซ็ตลำดับใน postgres และเติมคอลัมน์ id ด้วยข้อมูลใหม่ได้อย่างไร
ฉันมีโต๊ะที่มีมากกว่าล้านแถว ฉันต้องการรีเซ็ตลำดับและกำหนดคอลัมน์รหัสใหม่ด้วยค่าใหม่ (1, 2, 3, 4 ... ฯลฯ ... ) มีวิธีง่ายๆในการทำเช่นนั้นหรือไม่?

6
postgresql: INSERT INTO … (SELECT * …)
ฉันไม่แน่ใจว่า SQL มาตรฐาน: INSERT INTO tblA (SELECT id, time FROM tblB WHERE time > 1000) สิ่งที่ผมกำลังมองหาคือสิ่งที่ถ้า tblA และ tblB อยู่ในเซิร์ฟเวอร์ฐานข้อมูลที่แตกต่างกัน PostgreSql ให้ยูทิลิตี้หรือมีฟังก์ชันใด ๆ ที่จะช่วยในการใช้งาน INSERT query with PGresult struct ผมหมายถึงSELECT id, time FROM tblB ...จะกลับเกี่ยวกับการใช้PGresult* PQexecเป็นไปได้ไหมที่จะใช้โครงสร้างนี้ในโครงสร้างอื่นPQexecเพื่อเรียกใช้คำสั่ง INSERT แก้ไข: ถ้าเป็นไปไม่ได้ฉันจะไปแยกค่าจาก PQresult * และสร้างไวยากรณ์คำสั่ง INSERT หลายรายการเช่น: INSERT INTO films (code, title, did, …
125 sql  postgresql  insert  dblink 

7
Psql แสดงรายการตารางทั้งหมด
ฉันต้องการแสดงรายการตารางทั้งหมดในliferayฐานข้อมูลในการติดตั้ง PostgreSQL ของฉัน ฉันจะทำอย่างไร? ฉันต้องการดำเนินการSELECT * FROM applications;ในliferayฐานข้อมูล applicationsเป็นตารางในชีวิตของฉันเรย์ฐานข้อมูล วิธีนี้ทำได้อย่างไร? นี่คือรายการฐานข้อมูลทั้งหมดของฉัน: postgres=# \list List of databases Name | Owner | Encoding | Collate | Ctype | Access privileges -----------+----------+----------+-------------+-------------+----------------------- liferay | postgres | UTF8 | en_GB.UTF-8 | en_GB.UTF-8 | =Tc/postgres + | | | | | postgres=CTc/postgres+ | | | …
125 postgresql  psql 

20
ลำดับไบต์ไม่ถูกต้องสำหรับการเข้ารหัส“ UTF8”
ฉันกำลังพยายามนำเข้าข้อมูลบางส่วนไปยังฐานข้อมูลของฉัน ฉันจึงสร้างตารางชั่วคราว create temporary table tmp(pc varchar(10), lat decimal(18,12), lon decimal(18,12), city varchar(100), prov varchar(2)); และตอนนี้ฉันพยายามที่จะนำเข้าข้อมูล , copy tmp from '/home/mark/Desktop/Canada.csv' delimiter ',' csv แต่แล้วฉันก็ได้รับข้อผิดพลาด ERROR: invalid byte sequence for encoding "UTF8": 0xc92c ฉันจะแก้ไขได้อย่างไร ฉันจำเป็นต้องเปลี่ยนการเข้ารหัสของฐานข้อมูลทั้งหมดของฉันหรือไม่ (ถ้าเป็นเช่นนั้นจะทำอย่างไร) หรือฉันจะเปลี่ยนแค่การเข้ารหัสtmpตารางของฉันได้หรือไม่ หรือฉันควรพยายามเปลี่ยนการเข้ารหัสของไฟล์?
125 postgresql  import 

13
เปลี่ยนจาก SQLite เป็น PostgreSQL ในโครงการ Rails ใหม่
ฉันมีแอพทางรถไฟที่ฐานข้อมูลอยู่ใน SQLite (การพัฒนาและการผลิต) เนื่องจากฉันกำลังย้ายไปที่ heroku ฉันต้องการแปลงฐานข้อมูลของฉันเป็น PostgreSQL อย่างไรก็ตามฉันได้ยินมาว่าการพัฒนาฐานข้อมูลในพื้นที่ไม่จำเป็นต้องเปลี่ยนจาก SQLite ดังนั้นฉันจึงไม่จำเป็นต้องเปลี่ยนสิ่งนั้นอย่างไรก็ตามฉันจะเปลี่ยนสภาพแวดล้อมการผลิตจาก SQLite เป็น PostgreSQL ได้อย่างไร มีใครเคยทำแบบนี้มาก่อนและสามารถช่วยได้หรือไม่? ปล. ฉันไม่แน่ใจว่ากระบวนการนี้เรียกว่าอะไรกันแน่ แต่ฉันเคยได้ยินเกี่ยวกับการย้ายฐานข้อมูลจาก SQLite ไปยัง PostgreSQL สิ่งที่ต้องทำคืออะไร?

21
ไม่สามารถเชื่อมต่อกับ PostgreSQL ในเครื่องได้
ฉันจัดการสภาพแวดล้อมการพัฒนาท้องถิ่นของฉันได้แล้ว ขณะนี้แอป Rails ในพื้นที่ทั้งหมดของฉันให้ข้อผิดพลาด: PGError could not connect to server: Permission denied Is the server running locally and accepting connections on Unix domain socket "/var/pgsql_socket/.s.PGSQL.5432"? ฉันไม่รู้ว่ามันเกิดจากอะไร ในขณะที่ค้นหาโซลูชันฉันได้อัปเดตอัญมณีที่รวมอยู่ทั้งหมด, อัญมณีระบบที่อัปเดต, MacPort ที่อัปเดตแล้ว ไม่มีความสุข คนอื่น ๆ รายงานปัญหานี้เมื่ออัปเกรดจาก OSX Leopard เป็น Lion เนื่องจากความสับสนว่าควรใช้ Postgres เวอร์ชันใด (เช่นเวอร์ชัน OSX หรือเวอร์ชัน MacPorts) ฉันใช้งาน Lion มาหลายเดือนแล้วดังนั้นมันจึงดูแปลกที่สิ่งนี้ควรเกิดขึ้นในตอนนี้ ฉันลังเลที่จะยุ่งมากเกินไปโดยไม่เข้าใจก่อนว่าปัญหาคืออะไร ฉันจะแก้จุดบกพร่องนี้อย่างเป็นระบบได้อย่างไร …

7
ฟิลด์อัพเดต SQL ของตารางหนึ่งจากฟิลด์ของอีกตารางหนึ่ง
ฉันมีสองโต๊ะ: A [ID, column1, column2, column3] B [ID, column1, column2, column3, column4] Aจะเป็นส่วนย่อยของเสมอB(หมายถึงคอลัมน์ทั้งหมดAอยู่ในด้วยB) ฉันต้องการที่จะปรับปรุงการบันทึกที่มีเฉพาะที่IDอยู่ในBที่มีข้อมูลของพวกเขาจากคอลัมน์ทั้งหมดA Aสิ่งนี้IDมีอยู่ทั้งในAและB. มีUPDATEไวยากรณ์หรือวิธีอื่นใดที่ทำได้โดยไม่ต้องระบุชื่อคอลัมน์เพียงพูดว่า"set all column of A" ? ฉันใช้ PostgreSQL ดังนั้นจึงยอมรับคำสั่งที่ไม่ได้มาตรฐาน (อย่างไรก็ตามไม่แนะนำ)

1
ค้นหาพารามิเตอร์ (การตั้งค่า postgresql.conf) เช่น“ max_connections”
มีใครรู้บ้างว่าเป็นไปได้ (และถ้าใช่) ในการสืบค้นการตั้งค่าเซิร์ฟเวอร์ฐานข้อมูลใน PostgreSQL (9.1) ได้อย่างไร? ฉันต้องการตรวจสอบการตั้งค่าmax_connections(จำนวนสูงสุดของการเชื่อมต่อฐานข้อมูลที่เปิด)

6
แบบสอบถาม SQL เพื่อค้นหาเรกคอร์ดที่มี ID ไม่อยู่ในตารางอื่น
ฉันมีตารางสองตารางที่มีคีย์หลักที่ผูกไว้ในฐานข้อมูลและฉันต้องการค้นหาชุดที่ไม่ปะติดปะต่อระหว่างพวกเขา ตัวอย่างเช่น, Table1มีคอลัมน์ ( ID, Name) และข้อมูลตัวอย่าง:(1 ,John), (2, Peter), (3, Mary) Table2มีคอลัมน์ ( ID, Address) และข้อมูลตัวอย่าง:(1, address2), (2, address2) ดังนั้นวิธีที่ฉันจะสร้างแบบสอบถาม SQL เพื่อให้สามารถดึงข้อมูลแถวที่มี ID จากที่ไม่ได้อยู่ในtable1 table2กรณีนี้(3, Mary)ควรส่งคืนหรือไม่? ps ID เป็นคีย์หลักสำหรับสองตารางนั้น ขอบคุณล่วงหน้า.
123 sql  database  postgresql 

9
พิมพ์สตริงเป็นจำนวนเต็ม - Postgres
ฉันกำลังนำเข้าข้อมูลจากตารางที่มีฟีดดิบใน Varchar ฉันต้องการนำเข้าคอลัมน์ใน varchar ลงในคอลัมน์สตริง ฉันลองใช้<column_name>::integerเช่นเดียวกับto_number(<column_name>,'9999999')แต่ฉันได้รับข้อผิดพลาดเนื่องจากมีช่องว่างสองสามช่องฉันจึงต้องดึงข้อมูลเหล่านั้นเป็นช่องว่างหรือว่างในตารางใหม่ โปรดแจ้งให้เราทราบหากมีฟังก์ชันที่เหมือนกัน

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