Question

I have a problem with saving 4000 characters to varchar2(4000) oracle 10g column it lets me save just 2000 characters and when I try to save exceeding 2000 character

I get tihs error

Can't save: GENERAL_ NOTE exceeds the maximum length of 4000

this is subsonic column definition TableSchema.TableColumn colvarGeneralNote = new
TableSchema.TableColumn(schema); colvarGeneralNote.ColumnName = "GENERAL_NOTE"; colvarGeneralNote.DataType = DbType.String; colvarGeneralNote.MaxLength = 4000; colvarGeneralNote.AutoIncrement = false; colvarGeneralNote.IsNullable = true; colvarGeneralNote.IsPrimaryKey = false; colvarGeneralNote.IsForeignKey = false; colvarGeneralNote.IsReadOnly = false; colvarGeneralNote.DefaultSetting = @""; colvarGeneralNote.ForeignKeyTableName = ""; schema.Columns.Add(colvarGeneralNote);

I can't save a string with exceeding 2000 characters to my varchar2(4000) column

Please advise me for that issue

Thanks - Adem

Was it helpful?

Solution

it could mean that you are inserting multi-byte data. try changing field definition to : varchar2(4000 char)

also what is nls_length_semantics in your db and the Characterset.

OTHER TIPS

I changed field definition to varchar2(4000 char) and my db settings as follows NLS_LENGTH_SEMANTICS BYTE NLS_NCHAR_CHARACTERSET AL16UTF16

I also find that when characters when charactes count between 2000 and 4000 I got ORA-01460: unimplemented or unreasonable conversion requested error and when character count higher than 4000 I got Can't save: GENERAL_ NOTE exceeds the maximum length of 4000 error Now

Thanks Adem

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top