الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

تحويل استعلام اوراكل الى sql

بدأه tatatab في 2 مايو 2014 · 2 رد · 521 مشاهدة · في قواعد بيانات Microsoft SQL Server
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

اخواني هل من طريقة لتحويل Query  طويلة من قاعدة ORACLE  الى SQL

#2

لا يوجد الكثير من الختلاف في جمل الاستعلام بين الاثنين ارفق الاستعلام اذا كان هناك مشكله

#3

System and Dept on PM

DECLARE

v_CODE varchar2(120);

v_OBJ varchar2(120);

v_OBTYPE varchar2(30);

v_TYPE varchar2(30);

v_ORG varchar2(60);

v_PPM varchar2(120);

v_SYS varchar2(200);

v_UDFCHAR01 varchar2(320);

v_UDFCHAR02 varchar2(320);

v_DEPT varchar2(320);

v_CONTA integer;

CURSOR C IS

​SELECT EVT_CODE, EVT_ORG, EVT_TYPE, NVL(EVT_PPM, '-'), NVL(EVT_UDFCHAR02, '-'), NVL(EVT_UDFCHAR01, '-')

​FROM R5EVENTS

​WHERE rowid =:rowid;

BEGIN​

OPEN C;

FETCH C INTO v_CODE, v_ORG, v_TYPE, v_PPM, v_UDFCHAR02, v_UDFCHAR01;

CLOSE C;

IF v_TYPE = 'PPM' THEN

​IF v_PPM <> '-' THEN

​​​

​​​SELECT COUNT(*) INTO v_CONTA FROM CUST_PM_SYSTEM WHERE PMS_CODE = v_PPM;

​​​IF v_CONTA > 0 THEN

​​​​SELECT NVL(PMS_SYSTEM, '-') INTO v_SYS FROM CUST_PM_SYSTEM WHERE PMS_CODE = v_PPM;

​​​​IF v_SYS <> '-' THEN

​​​​​v_DEPT := '--';

​​ ​​IF v_SYS IN ('B 1-7 Fire fighting', 'Irrigation', 'Gear car' ,'Oil separators', 'Refuse collection', 'Others') THEN

​​ ​​​v_DEPT := 'Mechanical';

​​ ​​END IF;

​​ ​​IF v_SYS IN ('B 3-4 Low voltage and lighting', 'MCC', 'B 3-1 Power supply network', 'B 3-2 Stand by generators', 'B 3-3 UPS', 'B 4-6 Visual docking guidance signs') THEN

​​ ​​​v_DEPT := 'Electrical';

​​ ​​END IF;

​​ ​​IF v_SYS IN ('Apron control tower', 'Central antenna', 'Master clock', 'B 4-12 Public address', 'Security' , 'Clean agent') THEN

​​ ​​​v_DEPT := 'Light Current';

​​ ​​END IF;

IF v_SYS IN ('B 4-4 Access control system', 'BMS', 'B 4-1 CCTV', 'B 4-2 Fire alarm', 'ISMS') THEN

​v_DEPT := 'Light current/Honeywell';

​ END IF;

​​ ​​IF v_SYS IN ('B 1-1 HVAC') THEN

​​ ​​​v_DEPT := 'HVAC';

​​ ​​END IF;

​​ ​​IF v_UDFCHAR01 IN ('Air craft movement', 'B 5-2 Roads and parking', 'B 1-2 Plumbing', 'Landscape' , 'B 5-1 Buildings') THEN

​v_DEPT := 'Civil';

​ END IF;

​​ ​​IF v_SYS IN ('400 Hz', 'BB', 'Elevator', 'Escalator', 'Moving Walk', 'Pre-cond. Air') THEN

​​ ​​​v_DEPT := 'Thyssen';

​​ ​​END IF;

​​ ​​IF v_SYS IN ('Cleaning & Pest') THEN

​​ ​​​v_DEPT := 'Housekeeping';

​​ ​​END IF;

​​ ​​IF v_UDFCHAR02 <> v_DEPT AND v_UDFCHAR01 <> v_SYS THEN

​​​ ​​UPDATE R5EVENTS

​​ ​​​SET EVT_UDFCHAR01 = v_SYS, EVT_UDFCHAR02 = v_DEPT

​​ ​​​WHERE rowid =:rowid;

​​ ​​END IF;

​​ ​END IF;

​ ​END IF;

​END IF;

END IF;

END;

مواضيع مشابهة