DB connections
Not all database systems can be covered here. However, one or two of the tips may help you find the solution for "your" system.
Connection cannot be established – local and remote
The "Test connection" button returns an error. The error message often provides the correct clue.
- Is the server named correctly? For example, for MySQL or MS SQL, it is sufficient to specify the IP address, but for MS SQL Express, the instance must be named, e.g.: localhost\SQLEXPRESS
- Is the name of the database spelled correctly? Does the user have access rights to the database? – For example, in MS SQL, databases are assigned to individual "logins." Ask your database administrator!
- MS SQL: Is the correct authentication set for the user ("SQL and Windows" for access with username/password)?
- Are the username and password correct? Pay attention to upper and lower case letters!
- Integrated security is enabled: The connection test is not meaningful. Integrated security uses the local Windows or domain user under which the respective program was started to log in. In the configuration environment, this is usually the user name you used to log in to the computer, while the router service runs under "System" by default (sufficient for local access to MS SQL, but not for remote access).
- Are the required services started (MS SQL: SQL Server and SQL Server Browser, via Server Configuration Manager or "Control Panel – Administration – Services")?
Connection cannot be established – remote only
The "Test connection" button returns an error. The error message often provides the correct clue. In addition to the points mentioned above, check the following:
- Is the network connection up and running? Can you ping the database computer ("Start – Run – ping <ip>")? Ask your network administrator!
- Are the firewalls of the computers involved disabled? We recommend disabling the Windows firewalls of the computers involved. Otherwise, please ensure that the ports are correctly opened. Ask your network administrator to enable unrestricted communication between the router and the database server.
- Is the server named correctly? For example, specifying the IP address is sufficient for MySQL or MS SQL, but for MS SQL Express, the instance must be named, e.g.: 192.168.5.184\SQLEXPRESS or computer name\SQLEXPRESS
- Does the database allow remote connections (e.g., in MS SQL, this must be enabled for the corresponding user)?
- Are the corresponding protocols enabled (MS SQL: In the Server Configuration Manager, enable "Named Pipes" or "TCP/IP" in the Network and Native Client Configuration, depending on the connection)?
Connection is established, but no tables are visible (MS SQL)
The "Test Connection" button returns "OK." However, no tables can be selected in the transfer object configuration.
- Does the user have the appropriate rights to the database? – Depending on their role, the user may not be allowed to "list tables."
- Under "Login Properties" for the corresponding login in the user assignment for the required database, assign "db_datareader" and "db_datawriter." Please note: "db_owner" is required to execute stored procedures. – Ask your database administrator.
- The user can also be assigned administrator rights to the database or the system (e.g., the "sysadmin" role). However, this should only be done for a short time for troubleshooting purposes.
Stored procedures cannot be executed. (MS SQL)
- Does the user have the appropriate rights to the database?
- Under "Login Properties" of the corresponding login in the user assignment for the required database "db_owner"
Stored procedures are aborted.
- Are the command timeout for the connection and the timeout for the corresponding connection set correctly?
Connection is established, but the DB connection does not appear in the DB transfer object.
The connection test was successful, but the DB connection does not appear in the connection project planning in the DB transfer object, or an error is returned.
- You must save the DB connection using the "OK" button before it is available.
No data transfer occurs at runtime.
The connection was established without any problems during the design phase. At runtime, the status display reports a connection error. Open the log file via the tray icon. Look for the error message at the end of the file. Does the error message look like this?
14.07.10 17:33:42.228 [Error:::SqlConstantConnection]
Error opening the SQL connection: System.Data.SqlClient.SqlException:
Error logging in for user 'NT AUTHORITY\ANONYMOUS LOGON'
- If you are accessing the database server remotely and have enabled "integrated security," you must not run the service as a system user. Configure the service to run under the domain user.