- 增加 IAdo.CommandFluent(sql) 方法执行 SQL 命令;

- 修复 SqlServer SqlBulkCopy IgnoreColumns 无效的 bug;
This commit is contained in:
28810
2020-09-23 22:00:48 +08:00
parent 9b93200237
commit 8a0862d6fe
25 changed files with 225 additions and 44 deletions

View File

@ -60,7 +60,7 @@ namespace FreeSql.Dameng
//if (param is string) return string.Concat('N', nparms[a]);
}
protected override DbCommand CreateCommand()
public override DbCommand CreateCommand()
{
return new DmCommand();
}
@ -72,6 +72,6 @@ namespace FreeSql.Dameng
else pool.Return(conn);
}
protected override DbParameter[] GetDbParamtersByObject(string sql, object obj) => _util.GetDbParamtersByObject(sql, obj);
public override DbParameter[] GetDbParamtersByObject(string sql, object obj) => _util.GetDbParamtersByObject(sql, obj);
}
}

View File

@ -62,7 +62,7 @@ namespace FreeSql.Firebird
}
DbConnection _CreateCommandConnection;
protected override DbCommand CreateCommand()
public override DbCommand CreateCommand()
{
if (_CreateCommandConnection != null)
{
@ -80,6 +80,6 @@ namespace FreeSql.Firebird
else pool.Return(conn);
}
protected override DbParameter[] GetDbParamtersByObject(string sql, object obj) => _util.GetDbParamtersByObject(sql, obj);
public override DbParameter[] GetDbParamtersByObject(string sql, object obj) => _util.GetDbParamtersByObject(sql, obj);
}
}

View File

@ -61,7 +61,7 @@ namespace FreeSql.KingbaseES
return string.Concat("'", param.ToString().Replace("'", "''"), "'");
}
protected override DbCommand CreateCommand()
public override DbCommand CreateCommand()
{
return new KdbndpCommand();
}
@ -73,6 +73,6 @@ namespace FreeSql.KingbaseES
else pool.Return(conn);
}
protected override DbParameter[] GetDbParamtersByObject(string sql, object obj) => _util.GetDbParamtersByObject(sql, obj);
public override DbParameter[] GetDbParamtersByObject(string sql, object obj) => _util.GetDbParamtersByObject(sql, obj);
}
}

View File

@ -65,7 +65,7 @@ namespace FreeSql.MsAccess
return string.Concat("'", param.ToString().Replace("'", "''"), "'");
}
protected override DbCommand CreateCommand()
public override DbCommand CreateCommand()
{
return new OleDbCommand();
}
@ -77,6 +77,6 @@ namespace FreeSql.MsAccess
else pool.Return(conn);
}
protected override DbParameter[] GetDbParamtersByObject(string sql, object obj) => _util.GetDbParamtersByObject(sql, obj);
public override DbParameter[] GetDbParamtersByObject(string sql, object obj) => _util.GetDbParamtersByObject(sql, obj);
}
}

View File

@ -67,7 +67,7 @@ namespace FreeSql.MySql
return string.Concat("'", param.ToString().Replace("'", "''").Replace("\\", "\\\\"), "'");
}
protected override DbCommand CreateCommand()
public override DbCommand CreateCommand()
{
return new MySqlCommand();
}
@ -79,6 +79,6 @@ namespace FreeSql.MySql
else pool.Return(conn);
}
protected override DbParameter[] GetDbParamtersByObject(string sql, object obj) => _util.GetDbParamtersByObject(sql, obj);
public override DbParameter[] GetDbParamtersByObject(string sql, object obj) => _util.GetDbParamtersByObject(sql, obj);
}
}

View File

@ -61,7 +61,7 @@ namespace FreeSql.Odbc.Dameng
//if (param is string) return string.Concat('N', nparms[a]);
}
protected override DbCommand CreateCommand()
public override DbCommand CreateCommand()
{
return new OdbcCommand();
}
@ -73,6 +73,6 @@ namespace FreeSql.Odbc.Dameng
else pool.Return(conn);
}
protected override DbParameter[] GetDbParamtersByObject(string sql, object obj) => _util.GetDbParamtersByObject(sql, obj);
public override DbParameter[] GetDbParamtersByObject(string sql, object obj) => _util.GetDbParamtersByObject(sql, obj);
}
}

View File

@ -62,7 +62,7 @@ namespace FreeSql.Odbc.Default
return string.Concat("'", param.ToString().Replace("'", "''"), "'");
}
protected override DbCommand CreateCommand()
public override DbCommand CreateCommand()
{
return new OdbcCommand();
}
@ -74,6 +74,6 @@ namespace FreeSql.Odbc.Default
else pool.Return(conn);
}
protected override DbParameter[] GetDbParamtersByObject(string sql, object obj) => _util.GetDbParamtersByObject(sql, obj);
public override DbParameter[] GetDbParamtersByObject(string sql, object obj) => _util.GetDbParamtersByObject(sql, obj);
}
}

View File

@ -61,7 +61,7 @@ namespace FreeSql.Odbc.KingbaseES
return string.Concat("'", param.ToString().Replace("'", "''"), "'");
}
protected override DbCommand CreateCommand()
public override DbCommand CreateCommand()
{
return new OdbcCommand();
}
@ -73,6 +73,6 @@ namespace FreeSql.Odbc.KingbaseES
else pool.Return(conn);
}
protected override DbParameter[] GetDbParamtersByObject(string sql, object obj) => _util.GetDbParamtersByObject(sql, obj);
public override DbParameter[] GetDbParamtersByObject(string sql, object obj) => _util.GetDbParamtersByObject(sql, obj);
}
}

View File

@ -61,7 +61,7 @@ namespace FreeSql.Odbc.MySql
return string.Concat("'", param.ToString().Replace("'", "''").Replace("\\", "\\\\"), "'");
}
protected override DbCommand CreateCommand()
public override DbCommand CreateCommand()
{
return new OdbcCommand();
}
@ -73,6 +73,6 @@ namespace FreeSql.Odbc.MySql
else pool.Return(conn);
}
protected override DbParameter[] GetDbParamtersByObject(string sql, object obj) => _util.GetDbParamtersByObject(sql, obj);
public override DbParameter[] GetDbParamtersByObject(string sql, object obj) => _util.GetDbParamtersByObject(sql, obj);
}
}

View File

@ -61,7 +61,7 @@ namespace FreeSql.Odbc.Oracle
//if (param is string) return string.Concat('N', nparms[a]);
}
protected override DbCommand CreateCommand()
public override DbCommand CreateCommand()
{
return new OdbcCommand();
}
@ -73,6 +73,6 @@ namespace FreeSql.Odbc.Oracle
else pool.Return(conn);
}
protected override DbParameter[] GetDbParamtersByObject(string sql, object obj) => _util.GetDbParamtersByObject(sql, obj);
public override DbParameter[] GetDbParamtersByObject(string sql, object obj) => _util.GetDbParamtersByObject(sql, obj);
}
}

View File

@ -62,7 +62,7 @@ namespace FreeSql.Odbc.PostgreSQL
return string.Concat("'", param.ToString().Replace("'", "''"), "'");
}
protected override DbCommand CreateCommand()
public override DbCommand CreateCommand()
{
return new OdbcCommand();
}
@ -74,6 +74,6 @@ namespace FreeSql.Odbc.PostgreSQL
else pool.Return(conn);
}
protected override DbParameter[] GetDbParamtersByObject(string sql, object obj) => _util.GetDbParamtersByObject(sql, obj);
public override DbParameter[] GetDbParamtersByObject(string sql, object obj) => _util.GetDbParamtersByObject(sql, obj);
}
}

View File

@ -75,7 +75,7 @@ namespace FreeSql.Odbc.SqlServer
return string.Concat("'", param.ToString().Replace("'", "''"), "'");
}
protected override DbCommand CreateCommand()
public override DbCommand CreateCommand()
{
return new OdbcCommand();
}
@ -87,6 +87,6 @@ namespace FreeSql.Odbc.SqlServer
else pool.Return(conn);
}
protected override DbParameter[] GetDbParamtersByObject(string sql, object obj) => _util.GetDbParamtersByObject(sql, obj);
public override DbParameter[] GetDbParamtersByObject(string sql, object obj) => _util.GetDbParamtersByObject(sql, obj);
}
}

View File

@ -61,7 +61,7 @@ namespace FreeSql.Oracle
//if (param is string) return string.Concat('N', nparms[a]);
}
protected override DbCommand CreateCommand()
public override DbCommand CreateCommand()
{
var cmd = new OracleCommand();
cmd.BindByName = true;
@ -75,6 +75,6 @@ namespace FreeSql.Oracle
else pool.Return(conn);
}
protected override DbParameter[] GetDbParamtersByObject(string sql, object obj) => _util.GetDbParamtersByObject(sql, obj);
public override DbParameter[] GetDbParamtersByObject(string sql, object obj) => _util.GetDbParamtersByObject(sql, obj);
}
}

View File

@ -79,7 +79,7 @@ namespace FreeSql.PostgreSQL
return string.Concat("'", param.ToString().Replace("'", "''"), "'");
}
protected override DbCommand CreateCommand()
public override DbCommand CreateCommand()
{
return new NpgsqlCommand();
}
@ -91,6 +91,6 @@ namespace FreeSql.PostgreSQL
else pool.Return(conn);
}
protected override DbParameter[] GetDbParamtersByObject(string sql, object obj) => _util.GetDbParamtersByObject(sql, obj);
public override DbParameter[] GetDbParamtersByObject(string sql, object obj) => _util.GetDbParamtersByObject(sql, obj);
}
}

View File

@ -62,7 +62,7 @@ namespace FreeSql.ShenTong
return string.Concat("'", param.ToString().Replace("'", "''"), "'");
}
protected override DbCommand CreateCommand()
public override DbCommand CreateCommand()
{
return new OscarCommand();
}
@ -74,6 +74,6 @@ namespace FreeSql.ShenTong
else pool.Return(conn);
}
protected override DbParameter[] GetDbParamtersByObject(string sql, object obj) => _util.GetDbParamtersByObject(sql, obj);
public override DbParameter[] GetDbParamtersByObject(string sql, object obj) => _util.GetDbParamtersByObject(sql, obj);
}
}

View File

@ -83,7 +83,7 @@ namespace FreeSql.SqlServer
}
DbConnection _CreateCommandConnection;
protected override DbCommand CreateCommand()
public override DbCommand CreateCommand()
{
if (_CreateCommandConnection != null)
{
@ -101,6 +101,6 @@ namespace FreeSql.SqlServer
else pool.Return(conn);
}
protected override DbParameter[] GetDbParamtersByObject(string sql, object obj) => _util.GetDbParamtersByObject(sql, obj);
public override DbParameter[] GetDbParamtersByObject(string sql, object obj) => _util.GetDbParamtersByObject(sql, obj);
}
}

View File

@ -82,6 +82,8 @@ public static partial class FreeSqlSqlServerGlobalExtensions
if (batchSize.HasValue) bulkCopy.BatchSize = batchSize.Value;
if (bulkCopyTimeout.HasValue) bulkCopy.BulkCopyTimeout = bulkCopyTimeout.Value;
bulkCopy.DestinationTableName = dt.TableName;
for (int i = 0; i < dt.Columns.Count; i++)
bulkCopy.ColumnMappings.Add(dt.Columns[i].ColumnName, dt.Columns[i].ColumnName);
bulkCopy.WriteToServer(dt);
};
@ -157,6 +159,8 @@ public static partial class FreeSqlSqlServerGlobalExtensions
if (batchSize.HasValue) bulkCopy.BatchSize = batchSize.Value;
if (bulkCopyTimeout.HasValue) bulkCopy.BulkCopyTimeout = bulkCopyTimeout.Value;
bulkCopy.DestinationTableName = dt.TableName;
for (int i = 0; i < dt.Columns.Count; i++)
bulkCopy.ColumnMappings.Add(dt.Columns[i].ColumnName, dt.Columns[i].ColumnName);
return bulkCopy.WriteToServerAsync(dt);
};

View File

@ -64,7 +64,7 @@ namespace FreeSql.Sqlite
}
DbConnection _CreateCommandConnection;
protected override DbCommand CreateCommand()
public override DbCommand CreateCommand()
{
if (_CreateCommandConnection != null)
{
@ -82,6 +82,6 @@ namespace FreeSql.Sqlite
else pool.Return(conn);
}
protected override DbParameter[] GetDbParamtersByObject(string sql, object obj) => _util.GetDbParamtersByObject(sql, obj);
public override DbParameter[] GetDbParamtersByObject(string sql, object obj) => _util.GetDbParamtersByObject(sql, obj);
}
}