Update mysql bulk copy

This commit is contained in:
sunkaixuan 2022-08-03 14:38:23 +08:00
parent 8469ccd21e
commit 2c014eccb0
2 changed files with 16 additions and 9 deletions

View File

@ -82,10 +82,10 @@ namespace SqlSugar
var value = ValueConverter(column, PropertyCallAdapterProvider<T>.GetInstance(column.PropertyName).InvokeGet(item)); var value = ValueConverter(column, PropertyCallAdapterProvider<T>.GetInstance(column.PropertyName).InvokeGet(item));
if (isMySql && column.UnderType == UtilConstants.BoolType) if (isMySql && column.UnderType == UtilConstants.BoolType)
{ {
if (value.ObjToBool() == false) //if (value.ObjToBool() == false)
{ //{
value = DBNull.Value; // value = DBNull.Value;
} //}
} }
else if (isSqliteCore&&column.UnderType == UtilConstants.StringType && value is bool) else if (isSqliteCore&&column.UnderType == UtilConstants.StringType && value is bool)
{ {
@ -180,10 +180,10 @@ namespace SqlSugar
} }
if (column.DataType==UtilConstants.BoolType&&this.context.CurrentConnectionConfig.DbType.IsIn(DbType.MySql, DbType.MySqlConnector)) if (column.DataType==UtilConstants.BoolType&&this.context.CurrentConnectionConfig.DbType.IsIn(DbType.MySql, DbType.MySqlConnector))
{ {
if (Convert.ToBoolean(dr[column.ColumnName]) == false) //if (Convert.ToBoolean(dr[column.ColumnName]) == false)
{ //{
dr[column.ColumnName] = DBNull.Value; // dr[column.ColumnName] = DBNull.Value;
} //}
} }
} }
tempDataTable.Rows.Add(dr); tempDataTable.Rows.Add(dr);

View File

@ -169,9 +169,16 @@ namespace SqlSugar
sb.Append("\"" + row[colum].ToString().Replace("\"", "\"\"") + "\""); sb.Append("\"" + row[colum].ToString().Replace("\"", "\"\"") + "\"");
} }
else if (colum.DataType == typeof(bool)) else if (colum.DataType == typeof(bool))
{
if (row[colum]==null||row[colum] == DBNull.Value)
{
sb.Append("NULL");
}
else
{ {
sb.Append(row[colum].ObjToBool() ? 1 : 0); sb.Append(row[colum].ObjToBool() ? 1 : 0);
} }
}
else if (colum.DataType == UtilConstants.DateType&& row[colum] != null && row[colum] != DBNull.Value) else if (colum.DataType == UtilConstants.DateType&& row[colum] != null && row[colum] != DBNull.Value)
{ {
sb.Append(row[colum].ObjToDate().ToString("yyyy-MM-dd HH:mm:ss.fff")); sb.Append(row[colum].ObjToDate().ToString("yyyy-MM-dd HH:mm:ss.fff"));