首页 > 解决方案 > 存储过程的字符串参数问题,该存储过程将数据从加载表带到临时表

问题描述

我有一个存储过程设置为从加载表(一个从源 csv 文件获取数据的表)中获取数据,以复制到一个阶段表,该表从加载表中执行许多派生字段。基本上它是一个运行的天蓝色数据工厂管道:

源文件 --> 加载表 ---> 阶段表 --> 事实表

我有许多“客户”,我从他们那里获取数据以加载到数据库中。对于每个客户,都有一个要为存储过程声明的参数,以便数据库知道它的客户 x 或 y 等。参数只是字符串文本,如“customer1”、“customer2”等。

我有一个新的客户数据集要加载到数据库中,我只是决定将其称为“customer3”。但是由于某种原因,存储过程无法识别此参数。当使用 'customer3' 参数执行 SP 时,阶段表只是空白,而不是填充来自负载表的数据。

为什么会出现一个空白的临时表?

标签: sqlazureparametersprocedure

解决方案


据我了解,存储过程将参数作为客户并从负载表中读取数据,然后插入到临时表中。是否将参数 @Customer 传递给管道,如果是,它会传递给 proc 吗?数据是否加载到加载表中,如果是,请打开SQL Server管理,连接数据库尝试

EXECUTE YourPeocName @Yourparametername='customer3'

看看它是否加载了舞台表,它确实意味着proc正在做它应该做的事情,问题在于将参​​数传递给管道中的proc。

让我知道事情的后续 。


推荐阅读