I just noticed that there is a difference between MS SQL Server 2005 and 2008 in combination with Servoy.
With MSSQL 2005 an empty string was written to the database as NULL value
With MSSQL 2008 an empty string is written to the database as an empty string
Is this difference caused by Servoy, the JDBC-driver or Servoy?
Probably not Servoy because it happens on both Servoy 4.1.6 and Servoy 5.1.4.
I tested not only with the JDBC driver provided by Servoy, but also with the latest jtds.jar driver and both show this same situation.
Is there some setting to get the old behavior again, or do I need to test not only on NULL in my application, but also in empty string values?
and I empty the existing field, then it is considered as an empty string and not as NULL-value.
That isn’t very logic. If an error is triggered when nullColumnValidatorEnabled = true, then Servoy sees this as a null value. So why when nullColumnValidatorEnabled = false, the field isn’t seen as null value?
I don’t think this behaviour has changed in Servoy.
We have been sending null or empty to the db as received, but some databases (like apparently sqlserver 2005) were saving empty string as null.
The null-check in Servoy does, however, treat null and empty strings the same, you are right.