mirror of
https://gitee.com/dotnetchina/SqlSugar.git
synced 2025-09-22 20:13:41 +08:00
Synchronization code
This commit is contained in:
@@ -14,6 +14,10 @@ namespace SqlSugar
|
||||
{
|
||||
return db.Ado.SqlQuery<string>(this.GetDataBaseSql);
|
||||
}
|
||||
public virtual List<string> GetDataBaseList()
|
||||
{
|
||||
return this.Context.Ado.SqlQuery<string>(this.GetDataBaseSql);
|
||||
}
|
||||
public virtual List<DbTableInfo> GetViewInfoList(bool isCache = true)
|
||||
{
|
||||
string cacheKey = "DbMaintenanceProvider.GetViewInfoList" + this.Context.CurrentConnectionConfig.ConfigId;
|
||||
|
@@ -291,6 +291,8 @@ namespace SqlSugar
|
||||
column.SqlParameterDbType = sugarColumn.SqlParameterDbType;
|
||||
column.SqlParameterSize = sugarColumn.SqlParameterSize;
|
||||
column.CreateTableFieldSort = sugarColumn.CreateTableFieldSort;
|
||||
column.InsertServerTime = sugarColumn.InsertServerTime;
|
||||
column.InsertSql = sugarColumn.InsertSql;
|
||||
if (sugarColumn.IsJson && String.IsNullOrEmpty(sugarColumn.ColumnDataType))
|
||||
{
|
||||
if (this.Context.CurrentConnectionConfig.DbType == DbType.PostgreSQL)
|
||||
|
@@ -210,7 +210,9 @@ namespace SqlSugar
|
||||
DbColumnName = column.DbColumnName,
|
||||
PropertyName = column.PropertyName,
|
||||
PropertyType = UtilMethods.GetUnderType(column.PropertyInfo),
|
||||
TableId = i
|
||||
TableId = i,
|
||||
InsertSql = column.InsertSql,
|
||||
InsertServerTime = column.InsertServerTime
|
||||
};
|
||||
if (column.DbColumnName == null)
|
||||
{
|
||||
|
@@ -162,7 +162,7 @@ namespace SqlSugar
|
||||
string columnsString = string.Join(",", groupList.First().Select(it => Builder.GetTranslationColumnName(it.DbColumnName)));
|
||||
if (isSingle)
|
||||
{
|
||||
string columnParametersString = string.Join(",", this.DbColumnInfoList.Select(it => Builder.SqlParameterKeyWord + it.DbColumnName));
|
||||
string columnParametersString = string.Join(",", this.DbColumnInfoList.Select(it =>this.GetDbColumn(it, Builder.SqlParameterKeyWord + it.DbColumnName)));
|
||||
return string.Format(SqlTemplate, GetTableNameString, columnsString, columnParametersString);
|
||||
}
|
||||
else
|
||||
@@ -191,7 +191,7 @@ namespace SqlSugar
|
||||
{
|
||||
batchInsetrSql.Append(SqlTemplateBatchUnion);
|
||||
}
|
||||
batchInsetrSql.Append("\r\n SELECT " + string.Join(",", columns.Select(it => string.Format(SqlTemplateBatchSelect, FormatValue(it.Value),Builder.GetTranslationColumnName(it.DbColumnName)))));
|
||||
batchInsetrSql.Append("\r\n SELECT " + string.Join(",", columns.Select(it => string.Format(SqlTemplateBatchSelect,this.GetDbColumn(it, FormatValue(it.Value)),Builder.GetTranslationColumnName(it.DbColumnName)))));
|
||||
++i;
|
||||
}
|
||||
pageIndex++;
|
||||
@@ -272,6 +272,23 @@ namespace SqlSugar
|
||||
var date = UtilMethods.ConvertFromDateTimeOffset((DateTimeOffset)value);
|
||||
return "'" + date.ToString("yyyy-MM-dd HH:mm:ss.fff") + "'";
|
||||
}
|
||||
|
||||
public virtual string GetDbColumn(DbColumnInfo columnInfo ,object name)
|
||||
{
|
||||
if (columnInfo.InsertServerTime)
|
||||
{
|
||||
return LambdaExpressions.DbMehtods.GetDate();
|
||||
}
|
||||
else if (columnInfo.InsertSql.HasValue())
|
||||
{
|
||||
return columnInfo.InsertSql;
|
||||
}
|
||||
else
|
||||
{
|
||||
return name+"";
|
||||
}
|
||||
}
|
||||
|
||||
#endregion
|
||||
}
|
||||
}
|
||||
|
@@ -26,6 +26,8 @@ namespace SqlSugar
|
||||
public bool IsJson { get; set; }
|
||||
public bool? IsUnsigned { get; set; }
|
||||
public int CreateTableFieldSort { get; set; }
|
||||
public bool InsertServerTime { get; set; }
|
||||
public string InsertSql { get; set; }
|
||||
internal object SqlParameterDbType { get; set; }
|
||||
}
|
||||
}
|
||||
|
@@ -41,5 +41,7 @@ namespace SqlSugar
|
||||
public Navigate Navigat { get; set; }
|
||||
public int CreateTableFieldSort { get; set; }
|
||||
public object SqlParameterSize { get; set; }
|
||||
public string InsertSql { get; set; }
|
||||
public bool InsertServerTime { get; set; }
|
||||
}
|
||||
}
|
||||
|
@@ -207,6 +207,8 @@ namespace SqlSugar
|
||||
public object SqlParameterDbType { get; set; }
|
||||
public object SqlParameterSize { get; set; }
|
||||
public int CreateTableFieldSort { get; set; }
|
||||
public bool InsertServerTime { get; set; }
|
||||
public string InsertSql { get; set; }
|
||||
}
|
||||
|
||||
|
||||
|
@@ -10,6 +10,7 @@ namespace SqlSugar
|
||||
|
||||
#region DML
|
||||
List<string> GetDataBaseList(SqlSugarClient db);
|
||||
List<string> GetDataBaseList();
|
||||
List<DbTableInfo> GetViewInfoList(bool isCache=true);
|
||||
List<DbTableInfo> GetTableInfoList(bool isCache=true);
|
||||
List<DbColumnInfo> GetColumnInfosByTableName(string tableName,bool isCache=true);
|
||||
|
@@ -125,7 +125,7 @@ namespace SqlSugar
|
||||
string columnsString = string.Join(",", groupList.First().Select(it => Builder.GetTranslationColumnName(it.DbColumnName)));
|
||||
if (isSingle)
|
||||
{
|
||||
string columnParametersString = string.Join(",", this.DbColumnInfoList.Select(it => Builder.SqlParameterKeyWord + it.DbColumnName));
|
||||
string columnParametersString = string.Join(",", this.DbColumnInfoList.Select(it =>base.GetDbColumn(it, Builder.SqlParameterKeyWord + it.DbColumnName)));
|
||||
ActionMinDate();
|
||||
return string.Format(SqlTemplate, GetTableNameString, columnsString, columnParametersString);
|
||||
}
|
||||
@@ -140,7 +140,7 @@ namespace SqlSugar
|
||||
foreach (var item in groupList)
|
||||
{
|
||||
batchInsetrSql.Append("(");
|
||||
insertColumns = string.Join(",", item.Select(it => FormatValue(it.Value,it.PropertyName)));
|
||||
insertColumns = string.Join(",", item.Select(it =>base.GetDbColumn(it, FormatValue(it.Value,it.PropertyName))));
|
||||
batchInsetrSql.Append(insertColumns);
|
||||
if (groupList.Last() == item)
|
||||
{
|
||||
|
@@ -38,7 +38,7 @@ namespace SqlSugar
|
||||
string columnsString = string.Join(",", groupList.First().Select(it => Builder.GetTranslationColumnName(it.DbColumnName)));
|
||||
if (isSingle&&this.EntityInfo.EntityName!= "Dictionary`2")
|
||||
{
|
||||
string columnParametersString = string.Join(",", this.DbColumnInfoList.Select(it => Builder.SqlParameterKeyWord + it.DbColumnName));
|
||||
string columnParametersString = string.Join(",", this.DbColumnInfoList.Select(it =>base.GetDbColumn(it, Builder.SqlParameterKeyWord + it.DbColumnName)));
|
||||
if (identities.HasValue())
|
||||
{
|
||||
columnsString = columnsString.TrimEnd(',') + "," + string.Join(",", identities.Select(it => Builder.GetTranslationColumnName(it.DbColumnName)));
|
||||
@@ -99,7 +99,7 @@ namespace SqlSugar
|
||||
|
||||
|
||||
batchInsetrSql.Append("(");
|
||||
insertColumns = string.Join(",", item.Select(it => FormatValue(it.Value, it.PropertyName)));
|
||||
insertColumns = string.Join(",", item.Select(it =>GetDbColumn(it, FormatValue(it.Value, it.PropertyName))));
|
||||
batchInsetrSql.Append(insertColumns);
|
||||
if (identities.HasValue())
|
||||
{
|
||||
|
@@ -47,7 +47,7 @@ namespace SqlSugar
|
||||
string columnsString = string.Join(",", groupList.First().Select(it => Builder.GetTranslationColumnName(it.DbColumnName)));
|
||||
if (isSingle)
|
||||
{
|
||||
string columnParametersString = string.Join(",", this.DbColumnInfoList.Select(it => Builder.SqlParameterKeyWord + it.DbColumnName));
|
||||
string columnParametersString = string.Join(",", this.DbColumnInfoList.Select(it =>base.GetDbColumn(it, Builder.SqlParameterKeyWord + it.DbColumnName)));
|
||||
ActionMinDate();
|
||||
return string.Format(SqlTemplate, GetTableNameString, columnsString, columnParametersString);
|
||||
}
|
||||
@@ -75,6 +75,10 @@ namespace SqlSugar
|
||||
}
|
||||
batchInsetrSql.Append("\r\n ( " + string.Join(",", columns.Select(it =>
|
||||
{
|
||||
if (it.InsertServerTime || it.InsertSql.HasValue())
|
||||
{
|
||||
return GetDbColumn(it, null);
|
||||
}
|
||||
object value = null;
|
||||
if (it.Value is DateTime)
|
||||
{
|
||||
|
@@ -50,7 +50,7 @@ namespace SqlSugar
|
||||
//{
|
||||
// return $"to_timestamp('{it.Value.ObjToString("yyyy-MM-ddTHH:mm:ss")}', 'yyyy-MM-ddTHH:mm:ss')";
|
||||
//}
|
||||
return spk;
|
||||
return GetDbColumn(it,spk);
|
||||
}
|
||||
|
||||
));
|
||||
@@ -77,6 +77,10 @@ namespace SqlSugar
|
||||
}
|
||||
batchInsetrSql.Append("\r\n ( " + string.Join(",", columns.Select(it =>
|
||||
{
|
||||
if (it.InsertServerTime || it.InsertSql.HasValue())
|
||||
{
|
||||
return GetDbColumn(it,null);
|
||||
}
|
||||
object value = null;
|
||||
if (it.Value is DateTime)
|
||||
{
|
||||
|
@@ -24,7 +24,7 @@ namespace SqlSugar
|
||||
string columnsString = string.Join(",", groupList.First().Select(it => Builder.GetTranslationColumnName(it.DbColumnName)));
|
||||
if (isSingle)
|
||||
{
|
||||
string columnParametersString = string.Join(",", this.DbColumnInfoList.Select(it => Builder.SqlParameterKeyWord + it.DbColumnName));
|
||||
string columnParametersString = string.Join(",", this.DbColumnInfoList.Select(it =>base.GetDbColumn(it,Builder.SqlParameterKeyWord + it.DbColumnName)));
|
||||
return string.Format(SqlTemplate, GetTableNameString, columnsString, columnParametersString);
|
||||
}
|
||||
else
|
||||
@@ -57,7 +57,7 @@ namespace SqlSugar
|
||||
{
|
||||
batchInsetrSql.Append(SqlTemplateBatchUnion);
|
||||
}
|
||||
batchInsetrSql.Append("\r\n SELECT " + string.Join(",", columns.Select(it => string.Format(SqlTemplateBatchSelect, FormatValue(it.Value), Builder.GetTranslationColumnName(it.DbColumnName)))));
|
||||
batchInsetrSql.Append("\r\n SELECT " + string.Join(",", columns.Select(it => string.Format(SqlTemplateBatchSelect,base.GetDbColumn(it, FormatValue(it.Value)), Builder.GetTranslationColumnName(it.DbColumnName)))));
|
||||
++i;
|
||||
}
|
||||
pageIndex++;
|
||||
|
@@ -46,7 +46,7 @@ namespace SqlSugar
|
||||
string columnsString = string.Join(",", groupList.First().Select(it => Builder.GetTranslationColumnName(it.DbColumnName)));
|
||||
if (isSingle)
|
||||
{
|
||||
string columnParametersString = string.Join(",", this.DbColumnInfoList.Select(it => Builder.SqlParameterKeyWord + it.DbColumnName));
|
||||
string columnParametersString = string.Join(",", this.DbColumnInfoList.Select(it =>base.GetDbColumn(it, Builder.SqlParameterKeyWord + it.DbColumnName)));
|
||||
ActionMinDate();
|
||||
return string.Format(SqlTemplate, GetTableNameString, columnsString, columnParametersString);
|
||||
}
|
||||
@@ -62,7 +62,7 @@ namespace SqlSugar
|
||||
foreach (var item in groupList)
|
||||
{
|
||||
batchInsetrSql.Append("(");
|
||||
insertColumns = string.Join(",", item.Select(it => FormatValue(i,it.DbColumnName,it.Value)));
|
||||
insertColumns = string.Join(",", item.Select(it =>base.GetDbColumn(it, FormatValue(i,it.DbColumnName,it.Value))));
|
||||
batchInsetrSql.Append(insertColumns);
|
||||
if (groupList.Last() == item)
|
||||
{
|
||||
|
Reference in New Issue
Block a user