You need to change default query terminator([;]) to sth else than ; and you may need to add this separator and new line between blocks of code:

SqlFiddleDemo

DECLARE
   x NUMBER := 100;
BEGIN
   FOR i IN 1..10 LOOP
      IF MOD(i,2) = 0 THEN     
         INSERT INTO temp VALUES (i, x, 'i is even');
      ELSE
         INSERT INTO temp VALUES (i, x, 'i is odd');
      END IF;
      x := x + 100;
   END LOOP;
   COMMIT;
END;

What's up with that [ ; ] button under each panel?

This obscure little button determines how the queries in each of the panels get broken up before they are sent off to the database. This button pops open a dropdown that lists different "query terminators." Query terminators are used as a flag to indicate (when present at the end of a line) that the current statement has ended. The terminator does not get sent to the database; instead, it merely idicates how I should parse the text before I execute the query.

Oftentimes, you won't need to touch this button; the main value this feature will have is in defining stored procedures. This is because it is often the case that within a stored procedure's body definition, you might want to end a line with a semicolon (this is often the case). Since my default query terminator is also a semicolon, there is no obvious way for me to see that your stored procedure's semicolon isn't actually the end of the query. Left with the semicolon terminator, I would break up your procedure definition into incorrect parts, and errors would certainly result. Changing the query terminator to something other than a semicolon avoids this problem.

Answer from Lukasz Szozda on Stack Overflow
🌐
SQL Fiddle
sqlfiddle.com
SQL Fiddle - Online SQL Compiler for learning & practice
Welcome to SQL Fiddle, an online SQL compiler that lets you write, edit, and execute any SQL query. Choose which SQL language you would like to practice today: SQL Server · SQLite · PostgreSQL · MySQL · MariaDB · Oracle · Oracle PLSQL · This is me! I'm Jonathan Magnan, the owner of ZZZ ...
🌐
SQL Fiddle
sqlfiddle.com › oracle › online-compiler
FREE AI-Enhanced Online Oracle Compiler - For learning & practice
Explore our free online Oracle editor to practice and execute SQL. AI-enhanced to chat, explain, and generate code. Start coding smarter today!
Discussions

sqlfiddle - SQL Fiddle - ORACLE 11G and Stored procedure - Stack Overflow
I wanted to ask about another problem and another one came out;) I wanted to use SQL Fiddle for example, but it doesn't work for me to create a table and a procedure that generates random data... Why More on stackoverflow.com
🌐 stackoverflow.com
oracle database - how to get PL/SQL in SQLFiddle? - Stack Overflow
Any clues how to get PL/SQL in SQLFiddle? I've tried begin dbms_output.put_line('Hello World'); end; / or begin null; end; / which works in SQL*Plus (or TOAD or SQLDeveloper or ...) but SQL... More on stackoverflow.com
🌐 stackoverflow.com
SQL Fiddle - Oracle Stored Procedure not updating rows - Stack Overflow
I am trying to learn Oracle stored procedures and I cannot make them run properly on SQL Fiddle or DBfiddle. I don't have access to an installed Oracle database. Here is my code from http://sqlfidd... More on stackoverflow.com
🌐 stackoverflow.com
March 24, 2022
oracle - DB<>Fiddle: Custom type and function (ORA-24344) - Database Administrators Stack Exchange
https://dbfiddle.uk/?rdbms=oracle_18&fiddle=4031e203694674dbc764b5290dd93bdb ... What’s the purpose of the slash? I haven’t needed to use it in Toad or SQL Developer. More on dba.stackexchange.com
🌐 dba.stackexchange.com
Top answer
1 of 1
4

You need to change default query terminator([;]) to sth else than ; and you may need to add this separator and new line between blocks of code:

SqlFiddleDemo

DECLARE
   x NUMBER := 100;
BEGIN
   FOR i IN 1..10 LOOP
      IF MOD(i,2) = 0 THEN     
         INSERT INTO temp VALUES (i, x, 'i is even');
      ELSE
         INSERT INTO temp VALUES (i, x, 'i is odd');
      END IF;
      x := x + 100;
   END LOOP;
   COMMIT;
END;

What's up with that [ ; ] button under each panel?

This obscure little button determines how the queries in each of the panels get broken up before they are sent off to the database. This button pops open a dropdown that lists different "query terminators." Query terminators are used as a flag to indicate (when present at the end of a line) that the current statement has ended. The terminator does not get sent to the database; instead, it merely idicates how I should parse the text before I execute the query.

Oftentimes, you won't need to touch this button; the main value this feature will have is in defining stored procedures. This is because it is often the case that within a stored procedure's body definition, you might want to end a line with a semicolon (this is often the case). Since my default query terminator is also a semicolon, there is no obvious way for me to see that your stored procedure's semicolon isn't actually the end of the query. Left with the semicolon terminator, I would break up your procedure definition into incorrect parts, and errors would certainly result. Changing the query terminator to something other than a semicolon avoids this problem.

🌐
DB Fiddle
db-fiddle.com
DB Fiddle - SQL Database Playground
An online SQL database playground for testing, debugging and sharing SQL snippets.
🌐
Oracle FreeSQL
livesql.oracle.com
Oracle FreeSQL: Learn and practice SQL with the worksheet
Oracle FreeSQL lets you learn, practice, run, and share Oracle SQL, PL/SQL, and Quick SQL in a browser-based worksheet
🌐
GitHub
github.com › zzzprojects › sqlfiddle2
GitHub - zzzprojects/sqlfiddle2: New version of SQL Fiddle based on OpenIDM · GitHub
You should now have a functional copy of SQL Fiddle running locally. I'm happy to entertain pull requests! ... To run the commercial database software (Microsoft SQL Server 2014 Express, Oracle 11g R2 XE) you must have a Windows Server 2008 R2 (or higher) instance available, preferably as a ...
Starred by 198 users
Forked by 41 users
Languages   JavaScript 43.9% | Groovy 23.0% | HTML 20.6% | PLpgSQL 3.6% | Less 3.0% | Shell 2.8%
🌐
SQL Fiddle
sqlfiddle.com › oracle-plsql › online-compiler
FREE AI-Enhanced Online Oracle PLSQL Compiler - For learning & practice
Click on "Edit SQL." The AI Code Editor will appear on the sidebar with your code selected. ... Click on "Replace" to use the generated code or "Reset" to edit the original code again. Our Online Oracle PLSQL Explainer uses AI to help you understand Oracle PLSQL syntax or a part of the SQL query.
Find elsewhere
🌐
Runsql
runsql.com › blog › posts › 2025-03-03-sql-fiddle-alternatives
Best SQL Fiddle Alternatives: A Comprehensive Comparison | dbdiagram Blog
March 3, 2025 - DB Fiddle: Supports MySQL, PostgreSQL, SQLite. SQLize Online: Covers broader database support, including MariaDB and Oracle.
🌐
Dbfiddle
dbfiddle.uk › k26Sg7fD
Oracle 11g Release 2 | db<>fiddle
a free online environment to experiment with SQL and other code
🌐
DBI Services
dbi-services.com › accueil › testing oracle sql online
Testing Oracle SQL online
January 27, 2018 - db<>fiddle has a very nice interface, easy to link and easy to paste to StackOverflow (click on ‘markdown’) ... SQL Server 2014 2016 2017, and even 2017 Linux version. ... Finally, you can also run on the latest release of Oracle, with a service provided by Oracle itself: Live SQL.
🌐
GitHub
github.com › zzzprojects › sqlfiddle3
GitHub - zzzprojects/sqlfiddle3: New version based on vert.x and docker · GitHub
Once the container images are available ... the SQL Fiddle services: kubectl create namespace sqlfiddle helm install sqlfiddleOpenCore · To run the commercial software, use these commands instead: kubectl create namespace sqlfiddle helm install sqlfiddleCommercialExtension · This will bring the site up with SQL Server and Oracle running ...
Starred by 337 users
Forked by 63 users
Languages   JavaScript 35.2% | TSQL 23.5% | HTML 16.9% | Groovy 12.5% | Shell 5.5% | Less 2.7%
🌐
Fiddles
fiddles.io
There's a fiddle for that!
Play around with database, create your schema and test SQL. Supports number of databases, currently MariaDB, MySQL, Oracle and Oracle PLSQL, PostgreSQL, SQLite and Microsoft SQL Server Go to sqlfiddle.com
🌐
SQL Shack
sqlshack.com › popular-free-sql-online-compilers
Popular free SQL online compilers
October 28, 2021 - Db<>Fiddle supports more SQL compilers than the other SQL online compilers. It supports SQL Server, SQLite, Firebird, MariaDB, MySQL, PostgreSQL, DB2, and Oracle.
Top answer
1 of 2
67

UPDATE: All seems to be working again. See the answer from Jake Feasel (the creator of SQL Fiddle).

To summarise info from the comments as an answer and bring up to date as of writing:

  1. SQLFiddle was broken for about a year but as of 2017-07-07 it is working for Oracle 11g R2.
  2. It also seems to be broken for MS SQL Server 2008, MS SQL Server 2014 and MySQL 5.5 but MySQL 5.6 is working.

(Please comment if any of the above changes and I'll update the answer accordingly).

SQLFiddle Alternatives

  1. http://rextester.com has options for MySQL, Oracle, PostgreSQL and SQL Server in the "Language" dropdown (as well as the ability to save work online in a similar way to SQLFiddle).
  2. http://db-fiddle.com has options for MySQL 5.5 / 5.6 / 5.7 / 8.0, PostgreSQL 9.4 / 9.5 / 9.6 / 10.0 and SQLite 3.16 / 3.17 / 3.18.
  3. https://dbfiddle.uk has options for MariaDB 10.2 / 10.3, MySQL 8.0, Oracle 11g Release 2, Postgres 8.4 / 9.4 / 9.5 / 9.6 / 10 / 11, SQL Server 2012 / 2014 / 2016 / 2017 / 2017 (Linux) and SQLite 3.8 / 3.16 (as well as the ability to save work online in a similar way to SQLFiddle). See further discussion here.
  4. Suggested alternatives for Oracle are Oracle Application Express and Oracle Live SQL.
  5. A MySQL alternative with more limited functionality is sqlize.com.
  6. A clunky MySQL alternative is sqltest.net (if you can find your way around the adverts).
  7. As a last resort, I've occasionally seen answers that use Stack Exchange Data Explorer to create custom queries (in SQL Server 2016) that aren't based on the built-in tables. [Disclaimer: I'm not sure it's really supposed to be used for this kind of purpose.]
2 of 2
13

if you are still interested in using SQL Fiddle I have some good news. Today I have gone live with a new version of the site which aims to improve both performance and reliability. If you are still having trouble, please let me know. Thanks

🌐
Oracle
forums.oracle.com › ords › apexds › post › sql-fiddle-sandbox-on-otn-4411
SQL Fiddle / Sandbox on OTN? - Oracle Forums
December 22, 2015 - Hi, a while back I stumbled upon an SQL fiddle / Sandbox (not sure what it's called) module on the Tech network, had created a test schema and was using it to practice. I didn't bookmark it and now, ...