- 增加 fsql.Insert(Dictionary<string, object>) 无实体类插入方法;#481

This commit is contained in:
2881099
2022-03-24 18:06:54 +08:00
parent 56ce675b65
commit dc688adc11
47 changed files with 416 additions and 80 deletions

View File

@ -27,7 +27,7 @@ namespace FreeSql.Dameng
public int GetDbType(DbColumnInfo column) => (int)GetSqlDbType(column);
DmDbType GetSqlDbType(DbColumnInfo column)
{
var dbfull = column.DbTypeTextFull.ToLower();
var dbfull = column.DbTypeTextFull?.ToLower();
switch (dbfull)
{
case "number(1)": return DmDbType.Bit;
@ -55,7 +55,7 @@ namespace FreeSql.Dameng
case "char(36)": return DmDbType.Char;
}
switch (column.DbTypeText.ToLower())
switch (column.DbTypeText?.ToLower())
{
case "bit":
_dicDbToCs.TryAdd(dbfull, _dicDbToCs["number(1)"]);
@ -157,7 +157,7 @@ namespace FreeSql.Dameng
return DmDbType.Double;
case "rowid":
default:
_dicDbToCs.TryAdd(dbfull, _dicDbToCs["nvarchar2(255)"]);
if (dbfull != null) _dicDbToCs.TryAdd(dbfull, _dicDbToCs["nvarchar2(255)"]);
return DmDbType.VarChar;
}
throw new NotImplementedException($"未实现 {column.DbTypeTextFull} 类型映射");

View File

@ -18,7 +18,7 @@ namespace FreeSql.Dameng
public override DbParameter AppendParamter(List<DbParameter> _params, string parameterName, ColumnInfo col, Type type, object value)
{
if (string.IsNullOrEmpty(parameterName)) parameterName = $"p_{_params?.Count}";
var dbtype = (DmDbType)_orm.CodeFirst.GetDbInfo(type)?.type;
var dbtype = (DmDbType?)_orm.CodeFirst.GetDbInfo(type)?.type;
switch (dbtype)
{
case DmDbType.Bit:
@ -40,7 +40,7 @@ namespace FreeSql.Dameng
}
break;
}
var ret = new DmParameter { ParameterName = QuoteParamterName(parameterName), DmSqlType = dbtype, Value = value };
var ret = new DmParameter { ParameterName = QuoteParamterName(parameterName), DmSqlType = dbtype ?? default, Value = value };
_params?.Add(ret);
return ret;
}