# What permissions/role needed for ignition to insert data to MSSQL table?

**URL:** <https://forum.inductiveautomation.com/t/what-permissions-role-needed-for-ignition-to-insert-data-to-mssql-table/73760>\
**Category:** Ignition\
**Tags:** ignition81\
**Created:** [May 16, 2023, 9:13am UTC](https://forum.inductiveautomation.com/t/what-permissions-role-needed-for-ignition-to-insert-data-to-mssql-table/73760 "2023-05-16T09:13:28Z")\
**Posts on this page:** 12\
**Page:** 1

<div class="post-metadata">

**Author:** ![hewking32](https://avatars.discourse-cdn.com/v4/letter/h/b5ac83/32.png) [@hewking32](https://forum.inductiveautomation.com/u/hewking32)\
**Post date:** [May 16, 2023, 9:13am UTC](https://forum.inductiveautomation.com/t/what-permissions-role-needed-for-ignition-to-insert-data-to-mssql-table/73760/1 "2023-05-16T09:13:28Z")

</div>

I hope i am not asking silly question but i have scenario when insert from mssql management studio to remote database (i have no control of) works but the insert from the ignition sql browser generates an error (it does work when writing to the local mssql table). I am only able to select the data from the remote database.  
My understanding is that it must be permission/role related but struggling to get any other diagnostic.  
Do you know if ignition needs more permissions than mssql studo to insert data to remote db? Would you recommend any tools to diagnose the issue further ? I will paste the wrapper file entry but it was suggesting that the format of the insert was not right but it works when using mssql studio and also works when inserting from ignition to the local table.  
Really puzzled.

---

<div class="post-metadata">

**Author:** ![Matrix\_Engineering](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/matrix_engineering/32/19781_2.png) [@Matrix\_Engineering](https://forum.inductiveautomation.com/u/Matrix_Engineering)\
**Post date:** [May 16, 2023, 10:37am UTC](https://forum.inductiveautomation.com/t/what-permissions-role-needed-for-ignition-to-insert-data-to-mssql-table/73760/2 "2023-05-16T10:37:02Z")

</div>

Hello, I don't use MS SQL often but there is DB reader and DB writer.

It sounds like you need to talk to the DBA and get write permissions assigned to the user that is configured in the Ignition gateway for this remote DB.

---

<div class="post-metadata">

**Author:** ![Matrix\_Engineering](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/matrix_engineering/32/19781_2.png) [@Matrix\_Engineering](https://forum.inductiveautomation.com/u/Matrix_Engineering)\
**Post date:** [May 16, 2023, 10:38am UTC](https://forum.inductiveautomation.com/t/what-permissions-role-needed-for-ignition-to-insert-data-to-mssql-table/73760/3 "2023-05-16T10:38:06Z")

</div>

p.s; are you logged into SSMS as the same role as Ignition is using?

---

<div class="post-metadata">

**Author:** ![Transistor](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/transistor/32/3380_2.png) [@Transistor](https://forum.inductiveautomation.com/u/Transistor)\
**Post date:** [May 16, 2023, 10:56am UTC](https://forum.inductiveautomation.com/t/what-permissions-role-needed-for-ignition-to-insert-data-to-mssql-table/73760/4 "2023-05-16T10:56:14Z")

</div>

Any time I've needed to connect to a remote MSSQL database I have set up named pipes. Usually I create an SQL user on the database and in most of my applications I give the user read-only permissions. I also set the authentication to SQL rather than Windows credentials so that it's a simple username/password connection to get connected without any Windows account problems.

See if this article helps:

> **[Configure Named Pipe And TCP/IP Settings Of SQL Server](https://www.c-sharpcorner.com/article/configure-named-pipe-and-tcpip-settings-of-sql-server/)**
>
> In this article, we are going to configure Microsoft SQL Server on windows machine to listen on specific TCP port.

---

<div class="post-metadata">

**Author:** ![hewking32](https://avatars.discourse-cdn.com/v4/letter/h/b5ac83/32.png) [@hewking32](https://forum.inductiveautomation.com/u/hewking32)\
**Post date:** [May 16, 2023, 1:25pm UTC](https://forum.inductiveautomation.com/t/what-permissions-role-needed-for-ignition-to-insert-data-to-mssql-table/73760/5 "2023-05-16T13:25:49Z")

</div>

yes the same roles on both

---

<div class="post-metadata">

**Author:** ![hewking32](https://avatars.discourse-cdn.com/v4/letter/h/b5ac83/32.png) [@hewking32](https://forum.inductiveautomation.com/u/hewking32)\
**Post date:** [May 16, 2023, 1:38pm UTC](https://forum.inductiveautomation.com/t/what-permissions-role-needed-for-ignition-to-insert-data-to-mssql-table/73760/6 "2023-05-16T13:38:47Z")

</div>

thank you for this link.  
Are named pipes alternative to TCP/IP with less overhead? My understanding is that named pipes can be used only if ignition and mssql server are on the same machine - is it right ?

---

<div class="post-metadata">

**Author:** ![Transistor](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/transistor/32/3380_2.png) [@Transistor](https://forum.inductiveautomation.com/u/Transistor)\
**Post date:** [May 16, 2023, 4:15pm UTC](https://forum.inductiveautomation.com/t/what-permissions-role-needed-for-ignition-to-insert-data-to-mssql-table/73760/7 "2023-05-16T16:15:43Z")

</div>

> [@hewking32](#):
>
> Are named pipes alternative to TCP/IP with less overhead?

I don't know enough to answer that.

> [@hewking32](#):
>
> My understanding is that named pipes can be used only if ignition and mssql server are on the same machine - is it right?

No, I use them specifically to access databases on other machines. Typically I was using them so that my PHP webserver could read data from HMI SQL databases.

---

<div class="post-metadata">

**Author:** ![Tim\_Carlton](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/tim_carlton/32/52835_2.png) [@Tim\_Carlton](https://forum.inductiveautomation.com/u/Tim_Carlton)\
**Post date:** [May 16, 2023, 4:43pm UTC](https://forum.inductiveautomation.com/t/what-permissions-role-needed-for-ignition-to-insert-data-to-mssql-table/73760/8 "2023-05-16T16:43:16Z")

</div>

IP won the network protocol wars. TCP/IP is interoperable across operating systems and is routable to machines across the world. It is a living standard and security is being improved constantly. The TCP/IP driver gets to use these improvements, sometime without even knowing about the improvements.

Named Pipes are not generally routable across an IP network. They may be specific to the OS of the endpoint machines and network servers. In some environments, Named Pipes may be limited to a single machine. In other environments a network segment may be able to use Named Pipes.

---

<div class="post-metadata">

**Author:** ![hewking32](https://avatars.discourse-cdn.com/v4/letter/h/b5ac83/32.png) [@hewking32](https://forum.inductiveautomation.com/u/hewking32)\
**Post date:** [May 16, 2023, 4:47pm UTC](https://forum.inductiveautomation.com/t/what-permissions-role-needed-for-ignition-to-insert-data-to-mssql-table/73760/9 "2023-05-16T16:47:32Z")

</div>

thanks for your comment.  
@Tim_Carlton how would you highlight the benefits of using named pipes?

---

<div class="post-metadata">

**Author:** ![hewking32](https://avatars.discourse-cdn.com/v4/letter/h/b5ac83/32.png) [@hewking32](https://forum.inductiveautomation.com/u/hewking32)\
**Post date:** [May 16, 2023, 4:48pm UTC](https://forum.inductiveautomation.com/t/what-permissions-role-needed-for-ignition-to-insert-data-to-mssql-table/73760/10 "2023-05-16T16:48:48Z")

</div>

> No, I use them specifically to access databases on other machines. Typically I was using them so that my PHP webserver could read data from HMI SQL databases.

on the same network - right?

---

<div class="post-metadata">

**Author:** ![Tim\_Carlton](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/tim_carlton/32/52835_2.png) [@Tim\_Carlton](https://forum.inductiveautomation.com/u/Tim_Carlton)\
**Post date:** [May 16, 2023, 4:51pm UTC](https://forum.inductiveautomation.com/t/what-permissions-role-needed-for-ignition-to-insert-data-to-mssql-table/73760/11 "2023-05-16T16:51:15Z")

</div>

I gave up long ago and use TCP/IP. It is probably faster - much faster. So if I am on a trusted homogeneous network I might try it once but if it doesn't work I move on pretty quickly.

---

<div class="post-metadata">

**Author:** ![Transistor](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/transistor/32/3380_2.png) [@Transistor](https://forum.inductiveautomation.com/u/Transistor)\
**Post date:** [May 16, 2023, 5:04pm UTC](https://forum.inductiveautomation.com/t/what-permissions-role-needed-for-ignition-to-insert-data-to-mssql-table/73760/12 "2023-05-16T17:04:51Z")

</div>

> [@hewking32](#):
>
> [Named pipes were] on the same network - right?

All in the same building but on different subnets so there were multiple routers between them.
