From: Anders Eggers-K. <di...@ae...> - 2004-05-04 09:44:55
|
I have a CHAR(32) field in my database using UNICODE_FSS as charset trying to insert a string of 32 chars using=20 INSERT MyTable (ColumnName) VALUES (?) causes an exception in GdsInetWriter.WriteOpaque in the line Write(fill, 0, len - buffer.Length); the value of len is 32 (presumably the size of the CHAR(32) field) buffer.Length is 96 (why it is not 64 I don't know... thought unicode=20 was 2 bytes per char) The resulting exception is: System.ArgumentOutOfRangeException: Non-negative number required. Parameter name: count at System.IO.MemoryStream.Write(Byte[] buffer, Int32 offset, Int32 = count) at System.IO.BinaryWriter.Write(Byte[] buffer, Int32 index, Int32 = count) at FirebirdSql.Data.Firebird.Gds.GdsInetWriter.WriteOpaque(Byte[] = buffer, Int32 len) at = FirebirdSql.Data.Firebird.Gds.GdsInetWriter.WriteParameter(GdsField = param) at FirebirdSql.Data.Firebird.Gds.GdsStatement.execute(Boolean isSP)=20 at FirebirdSql.Data.Firebird.Gds.GdsStatement.execute(Boolean isSP)=20 at FirebirdSql.Data.Firebird.Gds.GdsStatement.Execute()=20 at FirebirdSql.Data.Firebird.FbCommand.InternalExecute()=20 at FirebirdSql.Data.Firebird.FbCommand.ExecuteNonQuery() |