This repository was archived by the owner on Dec 24, 2022. It is now read-only.
File tree Expand file tree Collapse file tree 6 files changed +16
-0
lines changed
ServiceStack.OrmLite.MySql/Converters
ServiceStack.OrmLite.Oracle/Converters
ServiceStack.OrmLite.PostgreSQL/Converters
ServiceStack.OrmLite.SqlServer/Converters
ServiceStack.OrmLite.Sqlite/Converters
ServiceStack.OrmLite/Converters Expand file tree Collapse file tree 6 files changed +16
-0
lines changed Original file line number Diff line number Diff line change @@ -6,6 +6,9 @@ namespace ServiceStack.OrmLite.MySql.Converters
66 public class MySqlStringConverter : StringConverter
77 {
88 public MySqlStringConverter ( ) : base ( 255 ) { }
9+
10+ //https://stackoverflow.com/a/37721151/85785
11+ public override int MaxVarCharLength => UseUnicode ? 16383 : 21844 ;
912
1013 public override string MaxColumnDefinition => "LONGTEXT" ;
1114 }
Original file line number Diff line number Diff line change @@ -14,6 +14,8 @@ protected OracleStringConverter(int stringLength) : base(stringLength)
1414
1515 public override string MaxColumnDefinition => UseUnicode ? "NVARCHAR2(2000)" : "NVARCHAR2(4000)" ;
1616
17+ public override int MaxVarCharLength => UseUnicode ? 2000 : 4000 ;
18+
1719 public override string GetColumnDefinition ( int ? stringLength )
1820 {
1921 if ( stringLength . GetValueOrDefault ( ) == StringLengthAttribute . MaxText )
@@ -36,6 +38,8 @@ public Oracle12StringConverter() : base(32767) {}
3638
3739 public override string MaxColumnDefinition => UseUnicode ? "NVARCHAR2(16383)" : "NVARCHAR2(32767)" ;
3840
41+ public override int MaxVarCharLength => UseUnicode ? 16383 : 32767 ;
42+
3943 public override string GetColumnDefinition ( int ? stringLength )
4044 {
4145 if ( stringLength . GetValueOrDefault ( ) == StringLengthAttribute . MaxText )
Original file line number Diff line number Diff line change @@ -9,6 +9,9 @@ public class PostgreSqlStringConverter : StringConverter
99 {
1010 public override string ColumnDefinition => "TEXT" ;
1111
12+ //https://dba.stackexchange.com/questions/189876/size-limit-of-character-varying-postgresql
13+ public override int MaxVarCharLength => UseUnicode ? 10485760 / 2 : 10485760 ;
14+
1215 public override string GetColumnDefinition ( int ? stringLength )
1316 {
1417 //PostgreSQL doesn't support NVARCHAR when UseUnicode = true so just use TEXT
Original file line number Diff line number Diff line change @@ -9,6 +9,8 @@ namespace ServiceStack.OrmLite.SqlServer.Converters
99 public class SqlServerStringConverter : StringConverter
1010 {
1111 public override string MaxColumnDefinition => UseUnicode ? "NVARCHAR(MAX)" : "VARCHAR(MAX)" ;
12+
13+ public override int MaxVarCharLength => UseUnicode ? 4000 : 8000 ;
1214
1315 public override string GetColumnDefinition ( int ? stringLength )
1416 {
Original file line number Diff line number Diff line change @@ -5,5 +5,7 @@ namespace ServiceStack.OrmLite.Sqlite.Converters
55 public class SqliteStringConverter : StringConverter
66 {
77 public override string MaxColumnDefinition => UseUnicode ? "NVARCHAR(1000000)" : "VARCHAR(1000000)" ;
8+
9+ public override int MaxVarCharLength => 1000000 ;
810 }
911}
Original file line number Diff line number Diff line change @@ -17,6 +17,8 @@ public StringConverter(int stringLength)
1717
1818 public int StringLength { get ; set ; }
1919
20+ public virtual int MaxVarCharLength => UseUnicode ? 8000 : 4000 ;
21+
2022 protected string maxColumnDefinition ;
2123 public virtual string MaxColumnDefinition
2224 {
You can’t perform that action at this time.
0 commit comments