private string _getSqlType(MBColumn c) { switch (c.Type) { case _Types.t_bit: case _Types.t_boolean: case _Types.t_tinyint: case _Types.t_smallint: case _Types.t_year: case _Types.t_int: case _Types.t_integer: case _Types.t_mediumint: case _Types.t_bigint: case _Types.t_float: case _Types.t_double: case _Types.t_real: case _Types.t_rowversion: case _Types.t_dec: case _Types.t_fixed: case _Types.t_serial: case _Types.t_date: case _Types.t_datetime: case _Types.t_timestamp: case _Types.t_smalldatetime: case _Types.t_image: case _Types.t_money: case _Types.t_smallmoney: case _Types.t_uniqueidentifier: case _Types.t_tinytext: case _Types.t_text: case _Types.t_mediumtext: case _Types.t_longtext: case _Types.t_set: case _Types.t_enum: case _Types.t_ntext: case _Types.t_xml: case _Types.t_blob: case _Types.t_tinyblob: case _Types.t_mediumblob: case _Types.t_longblob: case _Types.t_spatial_geometry: case _Types.t_spatial_geography: case _Types.t_sql_variant: return(c.Type); case _Types.t_datetime2: case _Types.t_datetimeoffset: case _Types.t_time: return($"{c.Type}({c.DateTimePrecision})"); case _Types.t_numeric: case _Types.t_decimal: return($"{c.Type}({c.NumericPrecision},{c.NumericScale})"); case _Types.t_char: case _Types.t_varchar: case _Types.t_nchar: case _Types.t_nvarchar: case _Types.t_binary: case _Types.t_varbinary: return($"{c.Type}({c.CharMaxLength})"); } return(string.Empty); }
private string _getType(MBColumn c) { switch (c.Type) { case _Types.t_bit: case _Types.t_boolean: return((c.Nullable) ? "bool?" : "bool"); case _Types.t_tinyint: return((c.Nullable) ? "byte?" : "byte"); case _Types.t_smallint: return((c.Nullable) ? "short?" : "short"); case _Types.t_year: return((c.Nullable) ? "short?" : "short"); case _Types.t_int: return((c.Nullable) ? "int?" : "int"); case _Types.t_integer: return((c.Nullable) ? "int?" : "int"); case _Types.t_mediumint: return((c.Nullable) ? "int?" : "int"); case _Types.t_bigint: return((c.Nullable) ? "long?" : "long"); case _Types.t_float: return((c.Nullable) ? "double?" : "double"); case _Types.t_double: case _Types.t_real: return((c.Nullable) ? "float?" : "float"); case _Types.t_rowversion: return("byte[]"); case _Types.t_numeric: case _Types.t_decimal: case _Types.t_dec: case _Types.t_fixed: case _Types.t_serial: return((c.Nullable) ? "decimal?" : "decimal"); case _Types.t_date: case _Types.t_datetime: case _Types.t_datetime2: return((c.Nullable) ? "DateTime?" : "DateTime"); case _Types.t_timestamp: if (_Context.IsMySql) { return((c.Nullable) ? "DateTime?" : "DateTime"); } return("byte[]"); case _Types.t_datetimeoffset: return((c.Nullable) ? "DateTimeOffset?" : "DateTimeOffset"); case _Types.t_time: return((c.Nullable) ? "TimeSpan?" : "TimeSpan"); case _Types.t_smalldatetime: return((c.Nullable) ? "DateTime?" : "DateTime"); case _Types.t_image: return("byte[]"); case _Types.t_money: case _Types.t_smallmoney: return((c.Nullable) ? "decimal?" : "decimal"); case _Types.t_uniqueidentifier: return((c.Nullable) ? "Guid?" : "Guid"); case _Types.t_char: return("string"); case _Types.t_varchar: case _Types.t_tinytext: case _Types.t_text: case _Types.t_mediumtext: case _Types.t_longtext: case _Types.t_set: case _Types.t_enum: case _Types.t_nchar: case _Types.t_nvarchar: case _Types.t_ntext: case _Types.t_xml: return("string"); case _Types.t_binary: case _Types.t_varbinary: case _Types.t_tinyblob: case _Types.t_blob: case _Types.t_mediumblob: case _Types.t_longblob: return("byte[]"); case _Types.t_spatial_geometry: return((c.Nullable) ? "Nullable<System.Data.Spatial.DbGeometry>" : "System.Data.Spatial.DbGeometry"); case _Types.t_spatial_geography: return((c.Nullable) ? "Nullable<System.Data.Spatial.DbGeography>" : "System.Data.Spatial.DbGeography"); case _Types.t_sql_variant: return("object"); } return(string.Empty); }