> For the complete documentation index, see [llms.txt](https://sql-simulator.tribalknowledge.tech/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://sql-simulator.tribalknowledge.tech/api-tutorials/sql-server/windows-batch-file.md).

# Windows Batch File

**Step 1 - Issue port forward command to the Control Panel**

<pre><code>START /B kubectl port-forward <a data-footnote-ref href="#user-content-fn-1">[control panel name]</a> 5000:5000 > sscp.txt
</code></pre>

**Step 2 - Create Pod**

<pre data-full-width="false"><code>curl -X "POST" ^
  "http://localhost:5000/api/PodAPI/CreatePod?podname=<a data-footnote-ref href="#user-content-fn-2">[podname]</a>&#x26;dbtype=sqlserver&#x26;hdsize=10" ^
  -H "accept:  text/plain" 

</code></pre>

**Step 3- Issue port forwarding to the pod**

```
START /B kubectl port-forward [podname] 8080:80 1433:1433 > podresults.txt
```

**Step 4- Initialize Pod**

```
curl -X "POST" ^
  "http://localhost:8080/api/Pod/Init?username=[username]&password=[password]" ^
  -H "accept:  text/plain" 
```

**Step 5- Upload SQL Files to Pod.   Below shows you how to add multiple files.**&#x20;

```
curl -X  "POST" "http://localhost:8080/api/SQLFiles/Add?programming_language=tsql" ^
  -H "accept: */*" ^
  -H "Content-Type: multipart/form-data" ^
  -F files="@C:\\your directory\\your sub directory\\file1.tsql" ^
  -F files="@C:\\your directory\\your sub directory\\file2.tsql" 
```

**Step 6-Add Data Source**

```
curl -X "POST" ^
  "http://localhost:8080/api/DataSources/Add" ^
  -H "Content-Type: application/json" ^
  -d "{  \"database_type\": \"SQLSERVER\",  \"source_uid\": \"[username]\",  \"source_pwd\": \"[password]\",  \"source_database_name\": \"[database name]\",  \"source_server\": \"[server address]\",    \"source_trusted_connection\": \"false\",    \"simulated_uid\": \"[pod user name]\",  \"simulated_pwd\": \"[pod password]\",  \"simulated_database_name\": \"master\",  \"simulated_server\": \"127.0.0.1,1433\",  \"simulated_schema_name\": \"\",  \"simulated_trusted_connection\": \"false\"}"
```

**Step 7 - Test Data Source(optional)**

```
curl -X "POST" ^
  "http://localhost:8080/api/DataSources/TestConnection" ^
  -H "accept:  text/plain" 
```

**Step 8-Perform Preview Merge.  You also have the option of doing a DryRun or PostviewMerge.**

```
curl -X "GET" ^
  "http://localhost:8080/api/Run/PreviewMerge" ^
  -H "accept:  text/plain" 
```

[^1]: Replace this text with the name of the control panel

[^2]: Replace this text with the name of the pod
