Skip to content

Commit 8ffc700

Browse files
authored
Merge pull request #2324 from HicServices/task/sql-merge-colum-types
Task/sql merge colum types
2 parents 484eb36 + 2fda477 commit 8ffc700

File tree

3 files changed

+13
-4
lines changed

3 files changed

+13
-4
lines changed

CHANGELOG.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,9 @@ All notable changes to this project will be documented in this file.
44
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
55
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
66

7+
## [9.2.1] - Unreleased
8+
- Update Sql Merge component to force destination column types
9+
710
## [9.2.0] - 2026-03-10
811
- Add Internal Note to Catalogue
912
- Fix issue where project associations were not copied when a CIC was cloned

Rdmp.Core/DataExport/DataExtraction/Pipeline/Destinations/MSSqlMergeDestination.cs

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -255,10 +255,16 @@ protected override void WriteRows(DataTable toProcess, IDataLoadEventListener jo
255255
var pkColumns = toProcess.PrimaryKey;
256256
var nonPkColumns = toProcess.Columns.Cast<DataColumn>().Where(dc => !pkColumns.Contains(dc)).ToArray();
257257
//merge
258+
List<DatabaseColumnRequest> columnTypes = new List<DatabaseColumnRequest>() { };
259+
foreach (var column in destinationTable.DiscoverColumns())
260+
{
261+
columnTypes.Add(new DatabaseColumnRequest(column.GetRuntimeName(), column.DataType.ToString(), column.AllowNulls));
262+
}
263+
258264
var tmpTbl = db.CreateTable(
259265
out Dictionary<string, Guesser> _dataTypeDictionary,
260266
$"mergeTempTable_{tableName}_{DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff", CultureInfo.InvariantCulture).Replace('.', '-')}",
261-
toProcess, null, true, null);
267+
toProcess, columnTypes.ToArray(), true, null);
262268
var _managedConnection = tmpTbl.Database.Server.GetManagedConnection();
263269
var _bulkcopy = tmpTbl.BeginBulkInsert(CultureInfo.CurrentCulture, _managedConnection.ManagedTransaction);
264270
_bulkcopy.Timeout = SQLMergeTimeout;

SharedAssemblyInfo.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,6 @@
1010
[assembly: AssemblyTrademark("")]
1111
[assembly: AssemblyCulture("")]
1212

13-
[assembly: AssemblyVersion("9.2.0")]
14-
[assembly: AssemblyFileVersion("9.2.0")]
15-
[assembly: AssemblyInformationalVersion("9.2.0")]
13+
[assembly: AssemblyVersion("9.2.1")]
14+
[assembly: AssemblyFileVersion("9.2.1")]
15+
[assembly: AssemblyInformationalVersion("9.2.1")]

0 commit comments

Comments
 (0)