Monday, March 9, 2026

Oracle FreeSQL: Your Zero-Cost Gateway to Learning Oracle SQL


If you’ve ever tried to learn SQL, you know the 'getting started' part itself is often the biggest hurdle.
Usually, before you can even write a single SELECT statement, you’re stuck downloading GBs of software, configuring database servers, and troubleshooting environment setups.

Honestly, it’s a total buzzkill when you just want to learn how to query the data.

To solve this problem, I want to highlight Oracle FreeSQL platform in this blog. It’s essentially a free, browser-based playground that lets you jump straight into a real Oracle Database environment without installing a thing.

Before we dive into the details, let's watch this quick video I've prepared explaining the features of this platform.


So, what exactly is Oracle FreeSQL?

Think of it as a cloud-based SQL lab. Instead of wrestling with a local installation, you just open your browser and start coding. Because it’s built by Oracle, you’re interacting with the actual database engine used by the world’s largest enterprises.


What can you do with FreeSQL?

- Execute complex SQL queries and PL/SQL scripts.

- Explore deep database features on the fly.

- Follow interactive tutorials that actually let you run the code.

- Save your work and share scripts with friends or colleagues.


Why it’s actually useful ?

- The 'Zero Setup' Dream:
You don’t need a powerful laptop just to learn and practice. If you have a browser, you have a database.

- A Real-World Environment:
Because it runs on actual Oracle technology, the skills you pick up here are 1:1 transferable to a professional job. You’re practicing with the same database platform, same syntax and logic used in high-level development roles.

- Your Own Personal Sandbox:
When you sign up, you get a personal schema. This is your own private corner of the database where you can create tables, insert data, and build procedures. It’s a safe space to learn and experiment.

- Connectivity features:
One of the coolest features is that you aren't locked into the browser. You can connect your FreeSQL schema to external tools like VS Code, SQLcl, or even your own application code. This makes it a fantastic spot for quick prototyping.


Now, let's take a quick look at FreeSQL platform.


- Visit https://freesql.com

- Sign In to the platform using your existing Oracle SSO or create a new one.


- Once signed in, we can see our personal schema as well as all other seeded schemas provided by Oracle.


- As you can see, Oracle offers a variety of database versions such as 19c, 23ai and 26ai. And we can see all the database objects available to us like tables, views, functions, packages etc.





- Let's run the below query directly into our FreeSQL console (live instance). Please replace <your_table_name> with the table name you desire. Please run each statement individually to first create the table and then insert data into that table:

- Click on the play iconto execute each query.

- This will create the actual table in the live Oracle database and then insert two records into that table.

- Now you can run below query in the actual database (live instance):

- Now, let's switch to the seeded schema names Projects



- Oracle has provided a bunch of tables pertaining to information on Projects, Tasks etc.

- Let's run the below query directly from our FreeSQL console (live instance):



As you can see, this pre-built query gives us details on all the Projects, their associated Tasks and their Milestones:



- Now, let's build a View using this query in the live instance:



And now finally we can run a SELECT statement on the view we created:




So, I hope the live environment examples I provided above would have helped you get a good idea about this platform is and how you can utilize it in the right way for your learning and hands-on practice use-cases.

But it doesn't end here.

If you navigate to the Library section of this platform and go to Community tab, you will find a lot of built-in tutorials that will help you understand and practice many operations from the basics to the advanced concepts in the Oracle database.



Let's select tutorial on "26ai Duality Views"

Here, we can see the tutorial walks us through all the steps:



For each step where a code snippet has been provided, if we click on 'Insert into Editor', then it will simple inset it into our SQL editor and we can execute that code in our live environment.



This feature is extremely helpful for anyone learning databases because it combines conceptual understanding with practical experience. Instead of just reading about database concepts, users can immediately apply what they learn through live hands-on exercises in a real working environment.

This interactive approach makes learning much more effective, as it allows users to experiment, run queries, and see results instantly. By practicing directly in a live environment, learners are able to reinforce their knowledge, build confidence with Oracle SQL, and develop a much deeper understanding of how Oracle database actually works in real-world scenarios.


Last but not least, we can connect and access our FreeSQL database environment from external applications. To do so, click on  button.

This will bring up the below screen. As we can see here, it provides details on the hostname, port, service name and username/password to access our database environment.

It also gives us examples of how we can create a SQL Developer connection as well as SQLcl. With this feature, we can easily build our custom schema and access/operate it from our own applications.



The Bottom Line:
Learning database technology shouldn't feel like a chore. Platforms like Oracle FreeSQL matter because they strip away the technical noise and let you focus on what actually matters: writing queries, exploring data, and building your skills.
Whether you’re on a laptop at a coffee shop or even poking around on a tablet, you’ve got a world-class database at your fingertips.


Special thanks to Jeff Smith and Kris Rice for all the presentations and blogs/articles for educating on this platform.
I highly recommend going through below blogs on this topic, where they have covered a wide variety of capabilities and use cases of this platform.

https://www.thatjeffsmith.com/archive/2024/11/oracle-livesql-free-sql-db-23ai-no-sign-up-required/

https://www.thatjeffsmith.com/archive/2025/06/database-news-june-edition-23ai-and-some-livesql/

Share:

Friday, March 6, 2026

How to create Background Processes thru Automation feature in Oracle APEX

In the older releases of Oracle APEX, it was not easy to schedule a background process in Oracle APEX. If there was a requirement to schedule a background job, we would need to write custom code using DBMS_SCHEDULER API which was introduced in Oracle 10g.


Today's Oracle APEX has a built-in feature to create Automations which is certainly a much more developer friendly solution.


The Automation feature can be used for variety of use cases such as Sending Email Notifications as per a set schedule, Sending Push Notifications at certain interval, submitting/running long running processes in background, sending alerts by monitoring critical business activities etc.


Let's see what are the steps to create APEX Automations.

- Create a new App



- Navigate to Shared Components and locate Workflows and Automations section and click on Automations


- Click Create


- This will initiate a Wizard to create an Automation


- Here, we can name our Automation and also mention whether it will be a Scheduled automation or it will execute On-Demand


Let's select Scheduled for our use case


We will get an option to decide whether the Action gets triggered based on the output of a query Or it should Always trigger.

And in the end, we can define the Schedule of this Automation




- Now we will be presented with a screen where we need to mention the table name based based on which the Automation will execute and we also mention that whether to run it if Rows are returned or Not Returned.



- But what if we want to have a flexibility and mention a custom query which will decide whether the Automation should run or not ? No worries. We can switch to SQL Query option instead of Table and do so.

Let's say we have a custom table ORG_EMPLOYEES which holds employee information along with their Start Date and End Date. Now we want to create an Automation on this table to send an email if any employee has End Date in next 7 days. Let's see how to do it.


- Let's select SQL Query option and enter our query


Here, one can also utilize REST Enabled SQL or REST Data Source options instead of Local Database.



- Click Create


- We will see below message that says Automation has been created but it's in Disabled state



- We will also see all the details we entered so far in the below section



- Now let's create an Action in this Automation


- Scroll down to Actions section and click Add Action



- Let's select Send E-Mail in Type



- We can mention the standard Email parameters such as To, CC, BCC in this section



- Now, let's enter the Subject and Body for the Email Notification. In this case, it would be a message informing the recipient about Employee records set to expire soon.



- Click Create


- Now, let's click Save and Run. This will run the Automation as a one-off request. This is how we can test our Automation before Enabling it.



- We should receive the Email Notification like this.

- Now that the Automation has been tested successfully, we can Enable the Schedule so that it automatically runs in the background and will send email as per our conditions




This is how we can create a simple Automation in Oracle APEX to send Email Notifications. This feature has a big potential as it's not limited to sending notifications; instead we can call a PL/SQL procedure in the Action section so that we can execute custom code whenever an Automation runs and the process can take care of data processing, integrations as well as sending alerts etc. Since it will be a custom code, the possibilities are endless on what we can achieve through the Automation feature in Oracle APEX.


Share:

Tuesday, February 3, 2026

How to Create OTBI Reports in Oracle ERP Cloud

OTBI (Oracle Transactional Business Intelligence) in Oracle ERP Cloud is a real-time reporting tool that allows users to analyze and extract data directly from Oracle Fusion Cloud Applications. These reports provide insights into transactional data without requiring a complex data warehouse or precurated data.


Below are the key Features of OTBI Reports:

Self-Service Reporting: The tools is intuitive and can be easily used by business users with minimal technical skills, enabling them to create their own reports without needing extensive technical support.

Drag-and-Drop Interface: It provides an intuitive user interface with drag-and-drop functionality for report creation.

Predefined Subject Areas: Subject areas are the groupings of related data for specific functional areas, such as Finance, Human Resources etc.

Real-Time Data Access: OTBI reports query live transactional data, offering up-to-date information.


Building OTBI Reports:

Oracle ERP Cloud provides a lot of subject areas for variety of the business areas. While building a OTBI report, we need to correctly identify the Subject area as per our requirement and also identify the correct Business Objects underneath to cater to our business requirements.

Let's see the steps involved in creating OTBI reports.

- Go to Oracle ERP Cloud, go to Navigator. Select Report and analytics.



- Reports and Analytics page will be shown as below.

- Click on browse Catalog.

- Now click on New option and select Analysis from the dropdown.



- For our use case, we are going to create Analysis on Fixed Assets data.
For this, let's select Subject Area 'Fixed Assets - Asset Transactions Real Time'.



- The landing page will be where we will design our OTBI report.



Let's understand various sections of the designer area.

- Selected columns:
Selected Columns area represents Columns which you want to include in your Report output.


- Filters:
Filters area represents where conditions in this OTBI report.



- We are supposed to drag the desired columns from the subject areas on the left side to the Selected Columns area on the right side.

- As we can see, the subject area has many sub folders. Each subfolder has information related to variety of aspects related to Fixed Assets business area.
For example, the Fixed Assets folder has a sub folder named General Information which contains columns such as Asset number, Asset Description, Asset Type Description etc.



- Let's drag some desired columns from Subject area to the Selected Columns.
Once done, these columns will come in this report output.



Searching for columns:

- Now, let's say we want to find and add column pertaining to Asset Cost but we don't know which folder it resides in; then we can search for the desired text in the search area and it should show us the results matching the search string in the Subject Area pane.



- As we can see, we have found Asst Cost column. We can now drag and drop this one on the right side to include in our report.

- If we wish to find which folder this column resides in, then we have mouse over the column and we should be able to see the full path name in the popup.




- Here's what we have selected to be shown in our final report




Viewing output:

- Now, let's click on Results tab to see the output




- As we can see the output has Analysis can be seen here




Changing Column headings:


- We can change the Column Headings, if desired. Let's say we want to change heading of the column 



- Click on Column Format -> check the Custom Headings checkbox to enable the Column Heading field -> Change the column heading to the desired new value.




- Click OK and the column in our report will now have the updated heading




Creating Parameters for OTBI report:



- Let's see how to add parameters to our OTBI Analysis.


- Navigate to Prompts tab


- Click on + icon and select Column Prompt option. This will show us all the columns from our Selected Columns area. Let's select Asset Number




- We will be presented with a popup where we should select Operator as "is equal to / is in" and User Input as "Choice List"





- This will create a new prompt for the column Asset Number

 



- If we scroll down to Display area, we'll be able to see how the prompt will be seen in the real report along with the sample values.





Saving OTBI report:



- Click Save Analysis button to save the OTBI Analysis


- OTBI Analysis saved



Running the OTBI report:



- Let's navigate back to Catalog.


- We can see out new OTBI report/analysis here. Let's click on Open option




- We'll be presented with our report with parameter section showing the Asset Number prompt


- Let's select the desired Asset Number from the dropdown and click OK





- We can see our OTBI report has been successfully run for the given parameter and the output is shown.




This is how we can build OTBI analysis/reports and get the real-time reporting from variety of business areas in Oracle ERP Cloud.


Share: