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

8 tính năng tương thích mới của Oracle trong EnterpriseDB PPAS 9.2 Beta

Một số tính năng Oracle mới có trong PostgresPlus Advanced Server 9.2 beta. Hầu hết chúng là sự quyến rũ của sản phẩm và cần thiết nếu bất kỳ ai đã chuyển từ Oracle sang PostgreSQL. Nhiều tính năng mới hơn trong chính sản phẩm, tuy nhiên tôi muốn giới thiệu sơ qua một số tính năng liên quan đến khả năng tương thích của Oracle.

1. Hỗ trợ loại đối tượng: Trong phiên bản này, các chức năng thành viên được hỗ trợ, nhưng chưa hỗ trợ các chức năng thành viên MAP.

create or replace type mf_test as object
(
name varchar2(30),
member function disp return varchar2
);
create or replace type body mf_test as
member function disp return varchar2 is
begin
return 'Name : '||name;
end;
end;
edb=# declare
edb-# v_mf mf_test;
edb$# begin
edb$# v_mf := mf_test('Raghavendra');
edb$# dbms_output.put_line(v_mf.disp());
edb$# end;
Name : Raghavendra

EDB-SPL Procedure successfully completed

2. Kiểu con Pl / SQL: Bây giờ chúng ta có thể xác định các kiểu con của riêng mình trong phần khai báo của bất kỳ khối, chương trình con hoặc gói PL / SQL nào.

Syntax: SUBTYPE subtype_name IS base_type[(constraint)] [NOT NULL];

declare
subtype hiredate is date not null;
pfdate hiredate := sysdate;
begin
dbms_output.put_line(pfdate);
end;
06-OCT-12 19:53:44

EDB-SPL Procedure successfully completed

3. DROP TABLE CASCADE CONSTRAINTS: Tùy chọn này sẽ xóa tất cả các ràng buộc khóa foriegn tham chiếu đến bảng sẽ bị loại bỏ, sau đó loại bỏ bảng.

edb=# create table master(id int primary key);
edb=# create table master1(id int references master(id));
edb=# d master1
Table "enterprisedb.master1"
Column | Type | Modifiers
--------+---------+-----------
id | integer |
Foreign-key constraints:
"master1_id_fkey" FOREIGN KEY (id) REFERENCES master(id)

edb=# drop table master cascade constraints;
NOTICE: drop cascades to constraint master1_id_fkey on table master1
DROP TABLE
edb=# d master1
Table "enterprisedb.master1"
Column | Type | Modifiers
--------+---------+-----------
id | integer |

4. TYPE có trong Định nghĩa gói:

create or replace package t_pack as 
type ftype is record(name varchar2(20));
end;
edb=# call t_pack.ftype('EDB');
ftype
-------
(EDB)
(1 row)

5. Lệnh gọi hàm TABLE () trên các bảng lồng nhau: TABLE () cho phép truy vấn một tập hợp trong mệnh đề FROM như một bảng.

CREATE OR REPLACE TYPE string_a IS TABLE OF VARCHAR2(765);
select * from table(string_a('abc','xyz')) ;
column_value
--------------
abc
xyz
(2 rows)

6. IN / OUT của UDT trong lệnh gọi hàm: Các hàm udtabletype_in và udtabletype_out hiện được hỗ trợ cho các bảng lồng nhau.

7. Việc sử dụng các Từ khóa dành riêng (LOG / CURRENT_DATE): Bây giờ từ LOG có thể được sử dụng để đặt tên cho hàm. Ngoài ra CURRENT_DATE, có thể được sử dụng cho các tên biến.

edb=# create or replace function log(t text) return text as 
begin
return t;
end;

edb=# select log('EDB');
log
-----
EDB
(1 row)

edb=# declare
edb-# current_date date := '07-OCT-2012';
edb$# begin
edb$# dbms_output.put_line(current_date);
edb$# end;
07-OCT-12 00:00:00

EDB-SPL Procedure successfully completed

8. Hỗ trợ kiểu dữ liệu STRING / NVARCHAR2: Giờ đây, kiểu dữ liệu STRING và NVARCHAR2 cho dữ liệu nhiều byte được hỗ trợ cho cột bảng. Chuỗi có bí danh là VARCHAR2 và NVARCHAR2 ánh xạ tới varchar của kiểu dữ liệu PPAS.

edb=# create table dtype( a string, b nvarchar2);
CREATE TABLE
edb=# d dtype
Table "enterprisedb.dtype"
Column | Type | Modifiers
--------+-------------------+-----------
a | character varying |
b | character varying |

Liên kết tải xuống và phát hành ghi chú:
http://www.enterprisedb.com/products-services-training/products/postgres-plus-advanced-server/downloads


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Thực thi truy vấn bảng chéo động

  2. Chọn (truy xuất) tất cả các bản ghi từ nhiều lược đồ bằng Postgres

  3. Mảng số nguyên postgres làm tham số?

  4. 5 công cụ giám sát truy vấn PostgreSQL hàng đầu

  5. Phát hiện các mục trùng lặp trong CTE đệ quy