Bài viết này mô tả hai phương pháp để kết nối với cơ sở dữ liệu PostgreSQL bằng PHP:
- PostgreSQL Chức năng gốc
- PDO [Đối tượng dữ liệu PHP]
Cơ sở dữ liệu PostgreSQL và người dùng phải tồn tại trước khi bạn có thể sử dụng các phương thức này. Để biết thông tin về cách quản lý cơ sở dữ liệu PostgreSQL bằng CPanel, vui lòng xem bài viết này.
Kết nối với PostgreSQL bằng cách sử dụng các hàm gốc
PHP cung cấp nhiều chức năng để làm việc trực tiếp với cơ sở dữ liệu PostgreSQL.
Để kết nối với PostgreSQL bằng các hàm gốc, hãy làm theo các bước sau:
- Sử dụng mã PHP sau để kết nối với PostgreSQL và chọn cơ sở dữ liệu. Thay thế tên người dùng bằng tên người dùng, mật khẩu bằng mật khẩu của bạn và dbname & nbsp; với tên cơ sở dữ liệu:
Sau khi mã kết nối với PostgreSQL và chọn cơ sở dữ liệu, bạn có thể chạy các truy vấn SQL và thực hiện các hoạt động khác. Ví dụ: mã PHP sau đây chạy truy vấn SQL trích xuất tên cuối cùng từ bảng nhân viên và lưu trữ kết quả trong biến kết quả $:
Kết nối với PostgreSQL bằng PDO [đối tượng dữ liệu PHP]
Các chức năng của PostgreSQL trong quy trình trước đó chỉ có thể được sử dụng với cơ sở dữ liệu PostgreSQL. PDO tóm tắt truy cập cơ sở dữ liệu và cho phép bạn sử dụng mã có thể xử lý các loại cơ sở dữ liệu khác nhau.
Để kết nối với PostgreSQL bằng PDO, hãy làm theo các bước sau:
- Sử dụng mã PHP sau để kết nối với PostgreSQL và chọn cơ sở dữ liệu. Thay thế tên người dùng bằng tên người dùng, mật khẩu & nbsp; bằng mật khẩu và dbname của bạn bằng tên cơ sở dữ liệu:
Sau khi mã kết nối với PostgreSQL và chọn cơ sở dữ liệu, bạn có thể chạy các truy vấn SQL và thực hiện các hoạt động khác. Ví dụ: mã PHP sau đây chạy truy vấn SQL trích xuất tên cuối cùng từ bảng nhân viên và lưu trữ kết quả trong biến kết quả $:
Kết nối với PostgreSQL bằng PDO [đối tượng dữ liệu PHP]
- Các chức năng của PostgreSQL trong quy trình trước đó chỉ có thể được sử dụng với cơ sở dữ liệu PostgreSQL. PDO tóm tắt truy cập cơ sở dữ liệu và cho phép bạn sử dụng mã có thể xử lý các loại cơ sở dữ liệu khác nhau.
- Để kết nối với PostgreSQL bằng PDO, hãy làm theo các bước sau:
Nhập ./psql, cơ sở dữ liệu tên máy chủ và nhấn Enter. ....
Nếu bạn đã kết nối thành công, bạn sẽ thấy một tin nhắn tương tự, ví dụ dưới đây ..--without-pgsql at compile time. Still you can use yum command to install PHP -PostgreSQL interface −
yum install php-pgsql
Cài đặtpg_hba.conf file in your PostgreSQL installation directory and add the following line −
# IPv4 local connections: host all all 127.0.0.1/32 md5
Tiện ích mở rộng PostgreSQL được bật theo mặc định trong các bản phát hành mới nhất của Php 5.3.x. Có thể vô hiệu hóa nó bằng cách sử dụng--without-pgsql tại thời điểm biên dịch. Tuy nhiên, bạn có thể sử dụng lệnh yum để cài đặt giao diện php -postgresql -
[root@host]# service postgresql restart Stopping postgresql service: [ OK ] Starting postgresql service: [ OK ]
Trước khi bạn bắt đầu sử dụng giao diện PHP PostgreSQL, hãy tìm tệp pg_hba.conf trong thư mục cài đặt PostgreSQL của bạn và thêm dòng sau -
Bạn có thể khởi động/khởi động lại máy chủ Postgres, trong trường hợp nó không chạy, sử dụng lệnh sau -
Người dùng Windows phải bật PHP_PGSQL.DLL để sử dụng tiện ích mở rộng này. DLL này được bao gồm trong các bản phân phối Windows trong các bản phát hành mới nhất của Php 5.3.x
Để biết hướng dẫn cài đặt chi tiết, vui lòng kiểm tra hướng dẫn PHP của chúng tôi và trang web chính thức của nó.
1 | S. Không. API & Mô tả Tài nguyên pg_connect [Chuỗi $ Connection_String [, int $ Connect_Type]]] |
2 | bool pg_connection_reset [Kết nối tài nguyên $] Thói quen này đặt lại kết nối. Nó rất hữu ích cho việc phục hồi lỗi. Trả về đúng về thành công hoặc sai khi thất bại. |
3 | int pg_connection_status [Kết nối tài nguyên $] Thói quen này trả về trạng thái của kết nối được chỉ định. Trả về pgsql_connection_ok hoặc pgsql_connection_bad. |
4 | Chuỗi pg_dbname [[Tài nguyên $ Kết nối]] Thói quen này trả về tên của cơ sở dữ liệu mà tài nguyên kết nối PostgreSQL đã cho. |
5 | Tài nguyên pg_prepare [[Kết nối tài nguyên $], chuỗi $ stmtname, chuỗi $ truy vấn] Điều này gửi một yêu cầu để tạo một câu lệnh đã chuẩn bị với các tham số đã cho và chờ hoàn thành. |
6 | Tài nguyên PG_EXECUTE [[Tài nguyên $ Connection], Chuỗi $ STMTNAME, Mảng $ params] Thói quen này gửi một yêu cầu để thực hiện một câu lệnh đã chuẩn bị với các tham số đã cho và chờ kết quả. |
7 | Tài nguyên PG_Query [[Tài nguyên $ Connection], Chuỗi $ Truy vấn] Thường trình này thực thi truy vấn trên kết nối cơ sở dữ liệu được chỉ định. |
8 | mảng pg_fetch_row [tài nguyên $ result [, int $ row]] Thói quen này lấy một hàng dữ liệu từ kết quả liên quan đến tài nguyên kết quả được chỉ định. |
9 | Mảng PG_FETCH_ALL [result rescent $ result] Thói quen này trả về một mảng chứa tất cả các hàng [bản ghi] trong tài nguyên kết quả. |
10 | int pg_affected_rows [result result result] Thông thường này trả về số lượng hàng bị ảnh hưởng bởi các truy vấn chèn, cập nhật và xóa. |
11 | int PG_NUM_ROWS [result rescent $] Thói quen này trả về số lượng hàng trong tài nguyên kết quả PostgreSQL, ví dụ số lượng hàng được trả về bởi câu lệnh select. |
12 | bool pg_close [[Kết nối tài nguyên $]] Thói quen này đóng kết nối không liên tục với cơ sở dữ liệu PostgreSQL được liên kết với tài nguyên kết nối đã cho. |
13 | Chuỗi PG_LAST_ERROR [[Tài nguyên $ Connection]] Thói quen này trả về thông báo lỗi cuối cùng cho một kết nối nhất định. |
14 | Chuỗi pg_escape_literal [[Kết nối tài nguyên $], chuỗi $ data] Thông thường này thoát khỏi một nghĩa đen để chèn vào một trường văn bản. |
15 | Chuỗi PG_ESCAPE_STRING [[Tài nguyên $ Connection], Chuỗi $ Data] Thói quen này thoát khỏi một chuỗi để truy vấn cơ sở dữ liệu. |
Kết nối với cơ sở dữ liệu
Mã PHP sau đây cho thấy cách kết nối với cơ sở dữ liệu hiện có trên máy cục bộ và cuối cùng là đối tượng kết nối cơ sở dữ liệu sẽ được trả về.
Bây giờ, chúng ta hãy chạy chương trình đã cho ở trên để mở cơ sở dữ liệu của chúng ta TESTDB: Nếu cơ sở dữ liệu được mở thành công, thì nó sẽ cung cấp thông báo sau -testdb: if the database is successfully opened, then it will give the following message −
Opened database successfully
Tạo một bảng
Chương trình PHP sau đây sẽ được sử dụng để tạo một bảng trong cơ sở dữ liệu được tạo trước đó -
Khi chương trình đã cho ở trên được thực thi, nó sẽ tạo bảng công ty trong TESTDB của bạn và nó sẽ hiển thị các tin nhắn sau -testdb and it will display the following messages −
0
Chèn hoạt động
Chương trình PHP sau đây cho thấy cách chúng tôi có thể tạo bản ghi trong bảng công ty của chúng tôi được tạo trong ví dụ trên -
1
Khi chương trình đã cho ở trên được thực thi, nó sẽ tạo các bản ghi đã cho trong bảng công ty và sẽ hiển thị hai dòng sau -
2
Chọn Hoạt động
Chương trình PHP sau đây cho thấy cách chúng tôi có thể tìm nạp và hiển thị các bản ghi từ bảng công ty của chúng tôi được tạo trong ví dụ trên -
3
Khi chương trình đã cho ở trên được thực hiện, nó sẽ tạo ra kết quả sau đây. Giữ một lưu ý rằng các trường được trả về trong chuỗi chúng được sử dụng trong khi tạo bảng.
4
Cập nhật hoạt động
Mã PHP sau đây cho thấy cách chúng tôi có thể sử dụng câu lệnh Update để cập nhật bất kỳ bản ghi nào và sau đó tìm nạp và hiển thị các bản ghi được cập nhật từ Bảng công ty của chúng tôi -
5
Khi chương trình đã cho ở trên được thực thi, nó sẽ tạo ra kết quả sau -
6
Xóa hoạt động
Mã PHP sau đây cho thấy cách chúng tôi có thể sử dụng câu lệnh Xóa để xóa bất kỳ bản ghi nào và sau đó tìm nạp và hiển thị các bản ghi còn lại từ Bảng công ty của chúng tôi -
7
Khi chương trình đã cho ở trên được thực thi, nó sẽ tạo ra kết quả sau -
8