mirror of
https://gitee.com/dotnetchina/SqlSugar.git
synced 2025-04-05 17:37:58 +08:00
Synchronization code
This commit is contained in:
parent
468e3cc649
commit
c374a0675b
@ -1102,6 +1102,7 @@ namespace SqlSugar
|
|||||||
sb.Append(" ) ");
|
sb.Append(" ) ");
|
||||||
}
|
}
|
||||||
var result = sb.ToString();
|
var result = sb.ToString();
|
||||||
|
result = result.Replace(" = null)", " is null)");
|
||||||
if (result.IsNullOrEmpty())
|
if (result.IsNullOrEmpty())
|
||||||
{
|
{
|
||||||
return " 1=2 ";
|
return " 1=2 ";
|
||||||
|
@ -132,7 +132,8 @@ namespace SqlSugar
|
|||||||
{
|
{
|
||||||
var columnInfo = tableColumnList.FirstOrDefault(x => x.DbColumnName.Equals(it.DbColumnName, StringComparison.OrdinalIgnoreCase));
|
var columnInfo = tableColumnList.FirstOrDefault(x => x.DbColumnName.Equals(it.DbColumnName, StringComparison.OrdinalIgnoreCase));
|
||||||
var dbType = columnInfo?.DataType;
|
var dbType = columnInfo?.DataType;
|
||||||
if (dbType == null) {
|
if (dbType == null)
|
||||||
|
{
|
||||||
var typeName = it.PropertyType.Name.ToLower();
|
var typeName = it.PropertyType.Name.ToLower();
|
||||||
if (typeName == "int32")
|
if (typeName == "int32")
|
||||||
typeName = "int";
|
typeName = "int";
|
||||||
@ -140,7 +141,7 @@ namespace SqlSugar
|
|||||||
typeName = "long";
|
typeName = "long";
|
||||||
if (typeName == "int16")
|
if (typeName == "int16")
|
||||||
typeName = "short";
|
typeName = "short";
|
||||||
if (typeName == "boolean")
|
if (typeName == "boolean")
|
||||||
typeName = "bool";
|
typeName = "bool";
|
||||||
|
|
||||||
var isAnyType = PostgreSQLDbBind.MappingTypesConst.Where(x => x.Value.ToString().ToLower() == typeName).Any();
|
var isAnyType = PostgreSQLDbBind.MappingTypesConst.Where(x => x.Value.ToString().ToLower() == typeName).Any();
|
||||||
@ -148,11 +149,38 @@ namespace SqlSugar
|
|||||||
{
|
{
|
||||||
dbType = PostgreSQLDbBind.MappingTypesConst.Where(x => x.Value.ToString().ToLower() == typeName).FirstOrDefault().Key;
|
dbType = PostgreSQLDbBind.MappingTypesConst.Where(x => x.Value.ToString().ToLower() == typeName).FirstOrDefault().Key;
|
||||||
}
|
}
|
||||||
else {
|
else
|
||||||
|
{
|
||||||
dbType = "varchar";
|
dbType = "varchar";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return string.Format("CAST({0} AS {1})", base.GetDbColumn(it,FormatValue(it.Value)), dbType);
|
if (IsMySqlModel())
|
||||||
|
{
|
||||||
|
if (dbType == "numeric")
|
||||||
|
{
|
||||||
|
dbType = "numeric(18,6)";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (IsSqlServerModel())
|
||||||
|
{
|
||||||
|
if (dbType == "varchar")
|
||||||
|
{
|
||||||
|
dbType = "varchar(max)";
|
||||||
|
}
|
||||||
|
else if (dbType == "nvarchar")
|
||||||
|
{
|
||||||
|
dbType = "nvarchar(max)";
|
||||||
|
}
|
||||||
|
else if (dbType == "char")
|
||||||
|
{
|
||||||
|
dbType = "char(8000)";
|
||||||
|
}
|
||||||
|
else if (dbType == "nchar")
|
||||||
|
{
|
||||||
|
dbType = "nchar(4000)";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return string.Format("CAST({0} AS {1})", base.GetDbColumn(it, FormatValue(it.Value)), dbType);
|
||||||
|
|
||||||
})) + ")");
|
})) + ")");
|
||||||
++i;
|
++i;
|
||||||
@ -186,6 +214,16 @@ namespace SqlSugar
|
|||||||
return batchUpdateSql.ToString();
|
return batchUpdateSql.ToString();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private bool IsSqlServerModel()
|
||||||
|
{
|
||||||
|
return this.Context?.CurrentConnectionConfig?.MoreSettings?.DatabaseModel == DbType.SqlServer;
|
||||||
|
}
|
||||||
|
|
||||||
|
private bool IsMySqlModel()
|
||||||
|
{
|
||||||
|
return this.Context?.CurrentConnectionConfig?.MoreSettings?.DatabaseModel == DbType.MySql;
|
||||||
|
}
|
||||||
|
|
||||||
private StringBuilder GetBatchUpdateSql(StringBuilder batchUpdateSql)
|
private StringBuilder GetBatchUpdateSql(StringBuilder batchUpdateSql)
|
||||||
{
|
{
|
||||||
if (ReSetValueBySqlExpListType == null && ReSetValueBySqlExpList != null)
|
if (ReSetValueBySqlExpListType == null && ReSetValueBySqlExpList != null)
|
||||||
|
Loading…
Reference in New Issue
Block a user