# Technical Overview

Let me give you an example to describe how SQL Simulator works. Lets say you had the following Insert Statement:

```sql
Insert into tableA values (1,’test’);
```

You want to test this SQL before you run it against production, but you only have blank/empty database. So you would need to do the following steps:

1. Get the DDL for tableA from production
2. Use that DDL in the blank database to recreate the table structure
3. Check to see if the primary key of 1 exists in production and if so copy that record to your blank database.
4. Execute your insert statement against the blank database

When you give SQL Simulator a SQL Script it automates the steps listed above.  SQL Simulator has 3 main function.  They are:

* Postview Merge
* Preview Merge
* Dry Run
