MSSQL Data read only
Posted: 24.01.2018, 11:30
Dear Zeos developers,
in version 7.14 stable I came up with a problem in unit ZDbcDbLibMetadata.pas (Lazarus, MSSQL):
The function "TZMsSqlDatabaseMetadata.UncachedGetColumns" performs two (redundant?) queries for metadata.
In first place 'sp_columns' procedure is called, later syscolumns table is queried with hard coded collation order.
If the database collation is anything else but "Latin1_General_CS_AS", this query will return an empty result set and cause any data to be read only!
To solve the issue I just deleted the collation directive and recompiled the package, but this is just a quick and dirty solution and I don't know if it might have any side effects.
Unfortunately Lazarus doesn't have a suitable debugging tool but Wireshark shows me that ZConnection queries the database collation and therefore it should be available to the function.
kind regards
in version 7.14 stable I came up with a problem in unit ZDbcDbLibMetadata.pas (Lazarus, MSSQL):
The function "TZMsSqlDatabaseMetadata.UncachedGetColumns" performs two (redundant?) queries for metadata.
In first place 'sp_columns' procedure is called, later syscolumns table is queried with hard coded collation order.
If the database collation is anything else but "Latin1_General_CS_AS", this query will return an empty result set and cause any data to be read only!
To solve the issue I just deleted the collation directive and recompiled the package, but this is just a quick and dirty solution and I don't know if it might have any side effects.
Unfortunately Lazarus doesn't have a suitable debugging tool but Wireshark shows me that ZConnection queries the database collation and therefore it should be available to the function.
kind regards