PostgreSQL
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> PostgreSQL

Không tìm thấy mật khẩu cung cấp / không tìm thấy thông số vị trí PostgreSQL - Powershell

SET là bí danh cho Set-Variable , nhưng biến Powershell không phải là biến môi trường. Để đặt một biến môi trường, bạn cần sử dụng $env: phạm vi. Hãy thử:

$env:PGPASSWORD = 'myPwd';

Xem thêm tại đây để biết thêm về các biến môi trường.

Ngoài ra, tôi không nghĩ rằng bạn có thể thoát khỏi việc đưa đầu vào thô vào dòng lệnh như vậy trong PowerShell. Tôi nghĩ rằng nó sẽ coi mọi thứ là các lệnh riêng biệt, nhưng tôi có thể đã nhầm.

Bạn cũng có thể muốn sử dụng công tắc lệnh (-c ) và biểu tượng dừng phân tích cú pháp PowerShell (--% ) khi bạn gọi psql để ngăn PowerShell phân tích cú pháp chuỗi lệnh của bạn:

.\psql --% -U postgres -w MyDatabase -c "copy {'SELECT * FROM table';} TO 'C:\Users\e\Desktop\test1.csv' CSV DELIMITER ',';"

Hoặc đặt các lệnh thành một biến có chuỗi và ký tự ở đây thành psql:

$query = @'
copy {'SELECT * FROM table';} TO 'C:\Users\e\Desktop\test1.csv' CSV DELIMITER ',';
'@
$query | .\psql -U postgres -w MyDatabase

Hoặc khoảng một tá cách khác để gọi một tệp thực thi.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. GUI PostgreSQL nào tốt nhất? So sánh năm 2021

  2. Sắp xếp nhân bản hoặc số tự nhiên của các chuỗi từ và số hỗn hợp

  3. Làm cách nào để liệt kê tất cả các bảng có dữ liệu thay đổi trong 24 giờ qua?

  4. Trả về nhiều giá trị trong một hàm

  5. tác vụ cần tây không thể lặp qua nhiều hàng từ cơ sở dữ liệu postgresql với python