بسم الله الرحمن الرحيم , الحمد لله و الصلاة و السلام على رسول الله
تعديل الجدول
ALTER TABLE demo_products ADD ( last_updated_by varchar2 (35), last_updated_on timestamp (4) with local time zone )
إنشاء القادح
CREATE OR REPLACE TRIGGER "BI_product_info"
BEFORE INSERT OR UPDATE ON demo_product_info
FOR EACH ROW
BEGIN
IF (inserting) THEN
BEGIN
:new.Last_updated_by := nvl(v('APP_USER'), 'user');
:new.last_updated_on := systimestamp;
END;
ELSIF (updating) THEN
BEGIN
:NEW.Last_updated_by := nvl(v('APP_USER'), 'user');
:NEW.last_updated_on := systimestamp;
END;
END IF;
END;
** Attributes
Region Attributes: style=width:300px
** HTML Table Cell Attributes
style="color:#800517; font-weight: bold"
*** Do not forget to disable the tigger if you are going to upload data to your table:
ALTER TRIGGER bi_products DISABLE
APP_USER Syntax
Reference TypeSyntax
Bind variable
:APP_USER
PL/SQL
V('APP_USER')
Substitution string
&APP_USER.
Consider the following examples:
From within an HTML region:Hello you are logged in as &APP_USER.
Using PL/SQL:
htp.p('Hello you are logged in as'||V('APP_USER'));
As a bind variable:
SELECT * FROM some_table WHERE user_id = :APP_USER
CONNECT TO SQLPLUS as sysdba
then type:
alter user apex_public_user account unlock
alter user apex_public_user identified by oracle
-------------- Change HTTP Port:
أولا تأكد من رقم البورت
select dbms_xdb.gethttpport as "HTTP-Port"
, dbms_xdb.getftpport as "FTP-Port" from dual;
لتغير رقم البورت
begin
dbms_xdb.sethttpport('هنا ضع رقم البورت الذي تريد');
dbms_xdb.setftpport('هنا ضع رقم البورت الذي تريد');
end;
3142 إذا كنت ترغب في تغير رقم البورت المستخدم للاتصال بالسيرفر, فعليك تغير الرقم
في
Startup file and listener configuration
الحمدلله و الصلاة والسلام على رسول الله.
السلام عليكم و رحمة الله وبركاته
create or replace trigger BI_emp2
before insert on emp2
for each row
begin
if :new.empno is null then
select emp_seq2.nextval into :new.empno from dual;
end if;
end;
-------
alter trigger bi_emp enable;
-------
create or replace trigger BI_dept2
before insert on dept2
for each row
begin
if :new.DEPTNO is null then
select dept2_seq.nextval into :new.DEPTNO from dual;
end if;
end;
-------
alter trigger BI_dept2 enable;
-------------------------------------------------
إدخال البيانات: Inserting The Data
INSERT INTO EMP2 VALUES
(7369,'SMITH','CLERK',7902,to_date('17-12-1980','dd-mm-yyyy'),800,NULL,20);
INSERT INTO EMP2 VALUES
(7499,'ALLEN','SALESMAN',7698,to_date('20-2-1981','dd-mm-yyyy'),1600,300,30);
INSERT INTO EMP2 VALUES
(7521,'WARD','SALESMAN',7698,to_date('22-2-1981','dd-mm-yyyy'),1250,500,30);
INSERT INTO EMP2 VALUES
(7566,'JONES','MANAGER',7839,to_date('2-4-1981','dd-mm-yyyy'),2975,NULL,20);
INSERT INTO EMP2 VALUES
(7654,'MARTIN','SALESMAN',7698,to_date('28-9-1981','dd-mm-yyyy'),1250,1400,30);
INSERT INTO EMP2 VALUES
(7698,'BLAKE','MANAGER',7839,to_date('1-5-1981','dd-mm-yyyy'),2850,NULL,30);
INSERT INTO EMP2 VALUES
(7782,'CLARK','MANAGER',7839,to_date('9-6-1981','dd-mm-yyyy'),2450,NULL,10);
INSERT INTO EMP2 VALUES
(7788,'SCOTT','ANALYST',7566,to_date('13-JUL-87')-85,3000,NULL,20);
INSERT INTO EMP2 VALUES
(7839,'KING','PRESIDENT',NULL,to_date('17-11-1981','dd-mm-yyyy'),5000,NULL,10);
INSERT INTO EMP2 VALUES
(7844,'TURNER','SALESMAN',7698,to_date('8-9-1981','dd-mm-yyyy'),1500,0,30);
INSERT INTO EMP2 VALUES
(7876,'ADAMS','CLERK',7788,to_date('13-JUL-87')-51,1100,NULL,20);
INSERT INTO EMP2 VALUES
(7900,'JAMES','CLERK',7698,to_date('3-12-1981','dd-mm-yyyy'),950,NULL,30);
INSERT INTO EMP2 VALUES
(7902,'FORD','ANALYST',7566,to_date('3-12-1981','dd-mm-yyyy'),3000,NULL,20);
INSERT INTO EMP2 VALUES
(7934,'MILLER','CLERK',7782,to_date('23-1-1982','dd-mm-yyyy'),1300,NULL,10);
-------
INSERT INTO DEPT2 VALUES (10,'ACCOUNTING','NEW YORK');
INSERT INTO DEPT2 VALUES
(20,'RESEARCH','DALLAS');
INSERT INTO DEPT2 VALUES (30,'SALES','CHICAGO');
INSERT INTO DEPT2 VALUES (40,'OPERATIONS','BOSTON');
I hope that has been informative for you. Please do not hesitate to pose any question, and I will answer you as I have time بإذن الله تعالى
Saturday, September 3, 2011
Oracle Application Express
Upgrading Oracle Application Express within Oracle
Database 10g Express Edition (XE)
Oracle Database 10 g Express Edition (Oracle XE) includes Oracle Application Express release 2.1. It is strongly recommended that you upgrade to the latest release of Oracle Application Express to take advantage of all the latest features.
How to Upgrade
To install the latest version of Oracle Application Express in your Oracle Database XE, first download the latest version of Application Express from the Oracle Technology Network.
1. Unzip the downloadloaded zip file:
Linux: Unzip <filename>.zip
Windows: Double click <filename>.zip in Windows Explorer
[Note: You should keep the directory tree where you unzip the files short and not under directories that contain spaces. For example, within Windows unzip to C:\.]
2. Change your working directory to apex.
3. Start SQL*Plus and connect to the Oracle XE database:
Linux:
$ sqlplus /nolog
SQL> CONNECT SYS as SYSDBA
Enter Password:
SYS_Password
Windows:
{Command prompt} C:\apex> sqlplus /nolog
SQL> CONNECT SYS as SYSDBA
Enter Password:
SYS_Password
[Note: You should keep the directory tree where you unzip the files short and not under directories that contain spaces. For example, within Windows unzip to C:\.]
4. Install Application Express:
SQL> @apexins SYSAUX SYSAUX TEMP /i/
5. Log back into SQL*Plus (as above) and load images:
SQL> @apxldimg.sql APEX_HOME
[Note: APEX_HOME is the directory you specified when unzipping the file. For example, with Windows 'C:\'.]
6. Upgrade Application Express password:
SQL> @apxchpwd
Enter password for Application Express ADMIN account.
7. In a Web browser, navigate to the Oracle Application Express Administration Services application: