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

Các tính năng tương thích Oracle mới trong PostgresPlus Advanced Server 9.3Beta

Tóm lại về sản phẩm EnterpriseDB PostgresPlus Advanced Server, nó được xây dựng dựa trên phiên bản cộng đồng PostgreSQL với các tính năng Tương thích với Oracle và khả năng chạy với các ứng dụng Oracle hiện có mà không cần mã hóa lại (thường được yêu cầu trong quá trình di chuyển) và cho phép các doanh nghiệp tận hưởng lợi ích của Open cơ sở dữ liệu nguồn với Máy chủ nâng cao PostgresPlus.

Vì PostgresPlus Advanced Server 9.3 Beta được xây dựng dựa trên tính năng PostgreSQL 9.3 Beta của cộng đồng, do đó các tính năng Oracle-Compatiblity đa dạng được giới thiệu trong BETA được tung ra, như cú pháp kiểu Oracle, gói, hàm SQL, v.v. Dưới đây là một số ví dụ được thực thi trong PPAS 9.3 BETA:-

Cú pháp lượt xem vật chất hóa:

 TẠO CHẾ ĐỘ XEM VẬT LIỆU tên [build_clause] [create_mv_refresh] AS subquery 
Nơi build_clause là:
BUILD {IMMEDIATE | DEFERRED}
Nơi create_mv_refresh là:
LÀM MỚI [HOÀN THÀNH] [TRÊN NHU CẦU]

  • Xây dựng hoãn lại - Trong tùy chọn này, dữ liệu không được điền vào MV tại thời điểm tạo, thay vào đó, dữ liệu sẽ được điền sau đó bằng cách sử dụng CHẾ ĐỘ XEM VẬT LIỆU LÀM MỚI.
  • Xây dựng ngay lập tức - Trong tùy chọn này, dữ liệu được điền vào MV tại thời điểm tạo từ các bảng (Mặc định)

 edb =# create materialized view mymview1 
xây dựng ngay lập tức
khi chọn ename, sum (sal) từ nhóm emp theo ename;
SELECT 14
edb =# create materialized view mymview2
build deferred
as select ename, sum (sal) from emp group by ename;
CHỌN 0

Như bạn sẽ có thể tìm ra từ kết quả đầu ra ở trên rằng “XÂY DỰNG NGAY LẬP TỨC” điền tất cả các hàng tại thời điểm tạo, trong khi “XÂY DỰNG DEFERRED” chỉ đơn giản là tạo một đối tượng giả mà sau này sẽ được điền bằng CHẾ ĐỘ XEM VẬT LIỆU LÀM MỚI.

 edb =# refresh materialized view mymview2; 
REFRESH MATERIALIZED VIEW
edb =# select count (*) from mymview2;
count
-------
14
(1 hàng)

Chế độ REFRESH [COMPLETE] [ON DEMAND] cũng được hỗ trợ tại thời điểm tạo Chế độ xem vật chất hóa.

Hỗ trợ thêm các chức năng SQL của Oracle:
REGEXP_SUBSTR ()

 edb =# SELECT REGEXP_SUBSTR ('Tài liệu EDB TẠI http://www.enterprisedb.com/','http://([[:alnum:]+){3,4}/?') là KẾT QUẢ TỪ kép; 
kết quả
------------
http:// www
(1 hàng)

REGEXP_COUNT ()

 edb =# select regexp_count ('Tôi ở trong danh sách PG-Mailing', 'i', 1, 'i'); 
regexp_count
----------- ---
5
(1 hàng)

REGEXP_INSTR ()

 edb =# SELECT REGEXP_INSTR ('PostgreSQL', 'P') "position" TỪ kép; 
vị trí
----------
1
> (1 hàng)

RAWTOHEX () / HEXTORAW ()

 edb =# TẠO BẢNG kiểm tra (raw_col RAW (10)); 
TẠO BẢNG
edb =# CHÈN VÀO GIÁ TRỊ kiểm tra (HEXTORAW ('7D'));
CHÈN 0 1
edb =# select * from test;
raw_col
---------
x7d
(1 hàng)

> edb =# select rawtohex (raw_col) từ thử nghiệm;
rawtohex
----------
7d
(1 hàng)

trước>

Hỗ trợ thêm các Gói Oracle:

DBMS_SCHEDULER
DBMS_RANDOM
DBMS_CRYPTO
DBMS_MVIEW
DBMS_LOCK.sleep
UTL_HTTP
UTL_ENCODE
UTL_URL

Để biết thêm chi tiết, bạn có thể tham khảo ghi chú phát hành:
http://get.enterprisedb.com/releasenotes/PgPlus_AS_93Beta1_Release_Notes_20130802.pdf


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Mẹo điều chỉnh hiệu suất PostgreSQL

  2. Cách triển khai Teamcity với PostgreSQL để có tính khả dụng cao

  3. Chuyển id người dùng đến trình kích hoạt PostgreSQL

  4. Tính Tổng tích lũy trong PostgreSQL

  5. Khắc phục ‘LỖI:cột“ colname ”không tồn tại’ trong PostgreSQL khi sử dụng UNION, EXCEPT hoặc INTERSECT