SQL Server-转换/广播列的动态SQL存储过程

时间:2018-07-25 09:59:38

标签: sql sql-server stored-procedures dynamic-sql sqldatatypes

早上好

我的任务是创建一个存储过程,该存储过程将执行以下操作:

  1. 从我们已经存在的可指定此信息的映射表中选择“源”表名称,“目标”表列名称,“目标”表列数据类型和DataQualitycheckFlag。
  2. 使用此信息来检查每个被适当地标记为要逐一检查的源表列,以查看是否可以根据数据类型将数据成功转换/转换为目标列数据类型。
  3. 如果无法转换源列中的数据,则将此有问题的值记录在另一个数据库的另一个数据质量表中。这样我们就可以报告数据质量问题。
  4. 然后我们将有一个单独的过程,将可以转换为正确数据类型的行导入到目标表中。

我对SQL还是比较陌生,但是我最初的想法是在存储过程中以某种方式使用动态SQL来完成此任务。

任何朝正确方向的推动都会受到赞赏,最好举个例子。

谢谢。

1 个答案:

答案 0 :(得分:0)

您可以拿出一个映射表,以在CAST and CONVERT中指定的数据类型之间进行转换。

此映射表应用于找出是否可以对列进行隐式转换,因此必须生成报告。