Skip to main content

APEX -- Oracle is giving back to Community

Have you ever seen a online database which is free to use and free to practice.
Imagine you do not have to dowload GB's database software, install on your PC or laptop to practice SQL plus.


Application Express is a freeware application development framework based on Oracle Database. This was previously called HTML DB, long back while this was still HTML DB I had developed a Learning management system Oracle University which never went live on production. :-( but never stopped me from working on it.

You can download the current version from

But if you do not want to download and just want to practice or explore the options you can try creating an account on

For begginer follow the steps below to create your own account and start using APEX for sql basics practice.

Follow simple steps to create your own login, its as simple as creating an account for any social networking site.

1. Click on Sign Up.

2. Click on Next.

3. Enter a valid email along with First Name and Last Name and click Next.

4. Workspace is like a database instance or database id where you would create all the related objects of an application. Workspace name should be different than the one's already exist in APEX, so make sure you use a unique name.

 5. Schema name can be anything but default database objects and it will be specific to your workspace. Along with this you can choose the space required for your schema. Maximum that you can use is 50MB. Click Next once done.

6. Once you get on the following screen, enter a valid reason for which you want to use APEX and click on Next.

7. Enter the security code in the below screen and submit the request.

8. Once this is done, APEX will send an email confirmation to your mail address entered in step 2 which will contain a link which will activate your account.

9. Once you click on the link, APEX will create your workspace and then it will send you a password back to your email account. Use the password and first time you login, you will have to change your password. Once this is done then your are good to go.

10. To start using SQL, click on SQL Workshop ---> SQL Commands,

11. You can use the text box to execute SQL statements. Schema created here will have all the default tables that are available in a fresh database install along with APEX base tables.

Hope this post helps, leave your comments if you need more information.


Unknown said…
Respected Sir

Thanks for providing the useful information.

Nithin S Kamath
Mithun Ashok said…
Thank you Nitin. :-)
Unknown said…
HELLO SIR..........


ORA-20001: Query must begin with SELECT or WITH


Mithun Ashok said…
Hi Chandrashekara,

You might be missing something. Have you followed all the steps to create APEX account.

If yes then try the following and let me know if you get any error.

1. desc emp

2. select table_name from user_tables

To create a table use CREATE TABLE command.

kakali said…
respected sir,
i am very much thankful to you pproviding this useful information.
i accessed the online sql workshop and its working.
Sundar said…
Hi Sir,

SELECT * FROM table_name;
is not working for few tables that is available online / either if i create.
But, if i give DESCRIBE table_name; it is displaying all the column names & its types.
Could you pls explain why SELECT statement is not working for few tables? (Even if table name is EMP or EMP_DETAILS or EMP$ etc...

sharada m said…
Hello sir

Thanks for providing so much information and guidelines

Mithun Ashok said…
Thank you Sharada.
pallavi said…
thank you sir it is very useful information that ur providing
pallavi said…
This comment has been removed by the author.
Brijesh Kamath said…
APEX Doubt:

Hello Mithun,

I had just created an account in Apex. I ran a query which returned more than 10 records and then a message "More than 10 rows available. Increase rows selector to view more rows." was displayed. Could you tell me how to increase the rows selector in APEX?

Mithun Ashok said…
Hi Brijesh,

There is a drop down box which has number 10 which is in the same row as RUN button, this is the row selector.

Increase the count using drop down and this should show required number of rows.

Brijesh Kamath said…
Thank you, Mithun, for your prompt reply!

Brijesh Kamath said…
Hello Mithun,

In APEX, for executing the query, is there any shortcut key? Is clicking on "Run" button the only way?

Brijesh Kamath said…
Hello Mithun,

I am currently attending your SQL batch in Basvangudi branch. I wanted to work on more Projection and Selection queries,other than the assignment you gave, but I could not find them.Could you please send a link or something?

Mithun Ashok said…
Hi Brijesh,

There is no shortcut. Only way is to use the RUN button.

Mithun Ashok said…
Hi Brijesh,

You can refer to the link below,


Gopishetty Swetha said…
hello sir,
i created online account in apex and i used it once but now i,m unable to login again.....Is there any option like forgot password? as i'm not sure whether my password is correct or not.
please help me on this....
Unknown said…
Hi Sir, Thanks for providing such valuable items.I'm not able to get answers for questions related to correlated sub-quries.Please provide them too.
Unknown said…
Hi Sir, Thanks for providing such valuable items.I'm not able to get answers for questions related to correlated sub-quries.Please provide them too.
SHARMA said…
This comment has been removed by the author.
SHARMA said…
Hi Sir, I Bharat from Rajaji nagar branch and I want to know about Oracle Apex according to career prospect as I have got job in start-up company to develop apps using Pl/SQL+HTML also involved in it.
I want to know is it good for long term career and which way the career in future will move if I work on it. I will wait for your reply Sir.......and is it possible to move in Cloud computing after working on it in future.......

Popular posts from this blog

SQL Interview Questions on Subqueries

SUB Queries:
1. List the employees working in research department 2. List employees who are located in New York and Chicago
3. Display the department name in which ANALYSTS are working
4. Display employees who are reporting to JONES
5. Display all the employees who are reporting to Jones Manager
6. Display all the managers in SALES and ACCOUNTING department
7. Display all the employee names in Research and Sales Department who are having at least 1 person reporting to them
8. Display all employees who do not have any reportees
9. List employees who are having at least 2 reporting
10. List the department names which are having more than 5 employees
11. List department name having at-least 3 salesman
12. List employees from research and accounting having at-least 2 reporting
13. Display second max salary
14. Display 4th max salary
15. Display 5th max salary  -- Answer for nth Max Salary
Co-Related Subqueries:
16. Write a query to get 4th max salary from EMP table
17. Write a query to get 2nd…

Basics of RDBMS

Small set of information becomes data, this set of information helps make decision. Data is always some useful information.

Place where you store the data. Database represents some aspect of the real world called "miniworld". A database is designed, built and populated with data for a specific purpose. It has intended group of users and some preconceived applications in which these users are interested.

In other words, a database has some source from which data is derived, some degree of interaction with events in the real world and an audience that is actively interested in the contents of the database.

Database can also be defined as collection of one or more tables.

Ex: Mobile, human brain etc

DBMS (Database Management System)
Is a program that stores retrieves and modifies data in the database on request.

Study of different techniques of design, development and maintenance of the database

Types of DBMS
These types are based upon their management of database s…

Answers for SQL Functions

1. SQL> SELECT empno, ename FROM emp WHERE Length(ename) = 4;

2. SQL> SELECT empno, ename, job FROM emp where Length(job)=7;

3. SQL> SELECT Length('qspiders') - Length(replace('qspiders','s','')) FROM dual;

4. SQL>  SELECT empno, ename, job FROM emp WHERE Instr(job,'MAN') >0;

5. SQL> SELECT empno, ename, job FROM emp WHERE Instr(job, 'MAN') =1;

6. SQL> SELECT empno, ename, job FROM emp WHERE (Length(ename) - Length(Replace(ename, 'L',''))) = 1;

7. SQL> SELECT * FROM dept WHERE Instr(dname,'O') > 0;

8. SQL> SELECT Concat(ename,' working as a ') || Concat(job, ' earns ') || Concat(sal, '  in ') || Conc
at('dept ',deptno) AS text from emp;


SQL> SELECT Concat(Concat(Concat(Concat(Concat(Concat(Concat(ename,' working as a '), job),' earns '), sal),'  in '),'dept '), deptno) AS text FROM emp;

9. SQL> SELECT empno, ename…