mirror of
https://gitee.com/dotnetchina/SqlSugar.git
synced 2025-08-23 13:06:50 +08:00
Db.Fastest mysql
This commit is contained in:
parent
135f3ab53d
commit
0263c42856
@ -67,6 +67,8 @@ namespace OrmTest
|
||||
Price = 11
|
||||
}).UseMySql().ExecuteBulkCopy();
|
||||
var data = db.Queryable<Order>().ToList();
|
||||
db.Insertable(data).UseMySql().ExecuteBulkCopy();
|
||||
db.Fastest<Order>().BulkUpdate(data);
|
||||
Console.WriteLine("#### Insertable End ####");
|
||||
}
|
||||
}
|
||||
|
@ -11,13 +11,13 @@ namespace SqlSugar
|
||||
{
|
||||
public SqlSugarProvider Context { get; set; }
|
||||
|
||||
public string UpdateSql { get; set; } = @"UPDATE TM
|
||||
public virtual string UpdateSql { get; set; } = @"UPDATE TM
|
||||
SET {0}
|
||||
FROM {1} TM
|
||||
INNER JOIN {2} TE ON {3} ";
|
||||
|
||||
|
||||
public void CloseDb()
|
||||
public virtual void CloseDb()
|
||||
{
|
||||
if (this.Context.CurrentConnectionConfig.IsAutoCloseConnection && this.Context.Ado.Transaction == null)
|
||||
{
|
||||
@ -25,7 +25,7 @@ namespace SqlSugar
|
||||
}
|
||||
}
|
||||
|
||||
public async Task<int> UpdateByTempAsync(string tableName, string tempName, string[] updateColumns, string[] whereColumns)
|
||||
public virtual async Task<int> UpdateByTempAsync(string tableName, string tempName, string[] updateColumns, string[] whereColumns)
|
||||
{
|
||||
Check.ArgumentNullException(!updateColumns.Any(), "update columns count is 0");
|
||||
Check.ArgumentNullException(!whereColumns.Any(), "where columns count is 0");
|
||||
@ -35,7 +35,7 @@ namespace SqlSugar
|
||||
return await this.Context.Ado.ExecuteCommandAsync(sql);
|
||||
}
|
||||
|
||||
public async Task CreateTempAsync<T>(DataTable dt) where T : class, new()
|
||||
public virtual async Task CreateTempAsync<T>(DataTable dt) where T : class, new()
|
||||
{
|
||||
await this.Context.UnionAll(
|
||||
this.Context.Queryable<T>().Where(it => false).AS(dt.TableName),
|
||||
|
@ -13,6 +13,7 @@ namespace SqlSugar
|
||||
|
||||
public class MySqlFastBuilder:FastBuilder,IFastBuilder
|
||||
{
|
||||
public override string UpdateSql { get; set; } = @"UPDATE {1} TM INNER JOIN {2} TE ON {3} SET {0} ";
|
||||
public async Task<int> ExecuteBulkCopyAsync(DataTable dt)
|
||||
{
|
||||
|
||||
@ -61,5 +62,11 @@ namespace SqlSugar
|
||||
}
|
||||
return result;
|
||||
}
|
||||
public override async Task CreateTempAsync<T>(DataTable dt)
|
||||
{
|
||||
dt.TableName = "temp"+SnowFlakeSingle.instance.getID();
|
||||
var sql = this.Context.Queryable<T>().Where(it => false).ToSql().Key;
|
||||
await this.Context.Ado.ExecuteCommandAsync($"Create TEMPORARY table {dt.TableName}({sql}) ");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user