Oracle
SQL Server

Oracle to SQL Server Converter

Tables, indexes, foreign keys, and rows into SQL Server, Azure SQL, or Amazon RDS - once, or on a schedule while you cut over.

Version
5.7.0
Release Date
Nov. 4, 2026
Size
98.0 MB
Platform
Windows 10 or later

Rather not run it yourself?

Let us do the migration →

Move an Oracle schema into SQL Server without writing the target tables by hand. DBConvert creates the selected tables, indexes, and foreign keys, maps their columns, and transfers the rows directly between the two servers.

  • Reads Oracle Database 11.2 and later, including Oracle Database XE. The Oracle client ships with the application.
  • Writes to SQL Server, SQL Server Express, Azure SQL Database, or Amazon RDS for SQL Server.
  • Runs on Windows as a desktop application.
  • The same download converts SQL Server back into Oracle.

Watch an Oracle to Azure SQL migration

Azure SQL Database is reached as an ordinary SQL Server connection. One take, from connections to the result.

DBConvert for Oracle & MS SQL, the Windows desktop application. Convert an Oracle schema of 11 tables and 15,607 rows to Azure SQL Database through an ordinary SQL Server connection, in 31 seconds. Your time depends on hardware, network, and data. Watch on YouTube (1:58).

Prepare the migration before moving data

Connections, tables, and mappings have their own screens. Return to any of them as you refine the job, without restarting the setup.

Pick the schema and tables

Read one Oracle owner, choose its tables, and add a per-table row filter when only part of the data belongs in SQL Server.

Decide how names arrive

Oracle stores unquoted names in upper case. Keep them as they are, or fold table and column names to lower case; foreign keys follow the renamed tables.

Keep the setup

Save connections for reuse and keep the table selections, mappings, and options together in a job. Reopen it for the next test load instead of configuring the pair again.

Convert once, or synchronize during the cutover

Both modes are part of the same DBConvert application.

One-time conversion

Create the target schema and load the selected rows. Use a test database first, validate the result, and run the application's queries before making SQL Server the production database.

Scheduled synchronization

Keep Oracle in use while the SQL Server copy is tested. A scheduled job sends inserts, updates, and deletes, one way or both ways; see keys and conflict rules before allowing writes on both sides.

When SQL Server is the right target

One database platform across the company

Move the Oracle data into the SQL Server estate your other applications, reports, and administrators already use.

Managed SQL Server in the cloud

Load the data into Azure SQL Database or Amazon RDS for SQL Server when the provider should run the server and its routine maintenance.

How Oracle types map to SQL Server

These are the defaults. Review or override the target type per column before the first load.

In Oracle DBConvert default in SQL Server What needs attention
NUMBER without precision NUMERIC(38,18). Up to 20 integer digits and 18 decimals. If you know a column holds whole numbers or money, set a narrower type.
NUMBER(p), NUMBER(p,s) Integers by width: SMALLINT up to 4 digits, INT up to 9, BIGINT up to 18, wider as NUMERIC(p,0). With a scale, NUMERIC(p,s). A negative scale such as NUMBER(5,-2) becomes NUMERIC(7,0), so the value keeps its trailing zeros.
VARCHAR2, CHAR, CLOB, LONG NVARCHAR(n) and NCHAR(n) at the same length; CLOB, NCLOB, and LONG become NVARCHAR(MAX). Text is stored as Unicode, so accented and non-Latin characters arrive intact whatever the Oracle character set.
DATE, TIMESTAMP DATE becomes DATETIME2(0), time of day included; TIMESTAMP becomes DATETIME2(7). SQL Server keeps 7 fractional digits, so a TIMESTAMP(9) loses the last two.
TIMESTAMP WITH TIME ZONE, WITH LOCAL TIME ZONE DATETIMEOFFSET(6), stored as the UTC instant. The moment is exact, but the original offset or region name is not kept. Check code that displays local times.
BLOB, RAW, BINARY_FLOAT, BINARY_DOUBLE VARBINARY(MAX), VARBINARY(n), REAL, and FLOAT. No action needed; bytes and floating-point values are copied as they are.
INTERVAL Text, VARCHAR(64). SQL Server has no interval type. The application must parse the value if it calculates with it.
Identity columns INT or BIGINT IDENTITY by precision, with the existing key values. The next insert in SQL Server gets a key above the copied ones. Keys filled by sequences and triggers are copied as values only.

PL/SQL and application SQL need a separate pass

DBConvert moves tables, columns, indexes, foreign keys, and rows. Packages, procedures, triggers, sequences, and views are not converted; rewrite them in T-SQL and test them against the new database.

Supported versions and services

Oracle

  • Oracle Database 11.2 and later
  • Oracle client included in the installer

SQL Server

  • SQL Server 2008-2022, including Express editions
  • Azure SQL Database and Amazon RDS for SQL Server
  • SQL Server schemas (dbo, custom schemas)
  • Windows authentication or SQL authentication

How to migrate Oracle to SQL Server

1

Setup: connect Oracle and SQL Server

Pick Convert or Sync, then choose the source and destination connections side by side on one screen. A connection is saved once and reused by every job.

The Setup step in DBConvert: the mode, the Oracle source and SQL Server destination side by side, and the job name

Sync keeps an existing SQL Server database up to date with Oracle: each run carries only the inserts, updates and deletes since the last one.

The Setup step in Sync mode for Oracle to SQL Server: how changes are detected and the direction

Oracle source

Enter the host, port and service name, and the schema owner to read; blank uses the login. The Oracle client is installed with DBConvert. For NLS or authentication errors, see Oracle connection issues.

SQL Server target

Use SQL Server connection settings. Azure SQL needs SQL authentication and outbound TCP 1433.

2

Tables & mapping: see every SQL Server type before a row moves

Pick the tables, then open one: each Oracle column shows the SQL Server type it becomes. Change a type or a name in place; the line at the bottom names anything that would fail.

Tables and mapping for Oracle to SQL Server: the table list and one table's columns with their SQL Server types

Every option, in the guide

Naming rules, table options, row filters, scheduling and the command line work the same for every database pair, so they live in one place.

Move Oracle data into SQL Server

Download the current build and run the first job against your own database.

Windows Windows 10 or later · 98.0 MB