问题标签 [user-variables]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1431 浏览

ssis - SSIS 用户变量未在执行 SQL 任务中更新

我知道这应该很简单,但我无法让它工作。我在控制流中使用执行 SQL 任务,目的是设置 2 个 user_variables、vRunID 和 vRelease。我有一个非常简单的选择语句,其中我得到单行 2 列:

在结果集选项卡中,我尝试使用列(Id 和 Release)和 0,1 的“结果名称”映射到 User::vRunID 和 User::vRelease 的“变量名称”。我根本无法改变变量值。如果我对变量值进行硬编码,一切都运行良好,但我希望它基于 select 语句,这样我们就可以运行包而不必对值进行硬编码(这就是我们首先使用 SSIS 的原因) 有什么简单的我想念的吗?我需要在参数中设置一些东西吗?观看无数在线视频,看起来我已经按照我应该的方式进行了所有设置,但它不会加载值。

0 投票
2 回答
725 浏览

mysql - 如何获取一个位置周围的郊区列表,然后使用 MySql 重复其他位置?

我使用Queries A获得了距单个位置指定距离内的郊区列表。

我正在尝试调整查询 A 以获取 location1 周围的郊区列表,然后获取 location2 周围的郊区列表,依此类推(我将其称为Queries B)。本质上,查询 B 与查询 A 执行相同的操作,但针对每个单独的位置重复此操作。我的问题 - 我怎样才能只使用 MySQL 来做到这一点。非常感谢有关如何执行此操作的建议。


这是我正在使用的数据示例。SqlFiddle在这里


我试过的

查询 A - 获取单个兴趣点周围的郊区

结果

上面的查询返回兴趣点的一个位置。

以及 Tamworth 周边的郊区列表。


我尝试使用 MySQL 用户变量创建查询 BGROUP_CONCAT() ,并且FIND_IN_SET(). 这个想法是我可以像使用数组一样循环遍历这些值。如果您愿意,我可以发布我的最后一次尝试,但我什至没有接近解决方案(不是因为缺乏尝试)。

更新:这是我最后的尝试之一。


查询 B 的期望结果。对于 3 个兴趣点——Tamworth、Birmingham 和 Roanoke——这是我希望看到的。

非常感谢有关如何使用 MySQL 执行此操作的建议。

0 投票
1 回答
1947 浏览

sql-server - SSIS 2012 - 使用执行 SQL 任务和 ForEachLoop 容器将 xml 文件从文件夹加载到 SQL Server 表 COLUMN

今天我有一个新情况,其中客户问以下问题:

我们在一个文件夹中有 XML 文件。我们需要将这些文件加载​​到 SQL Server 表列(具有 XML 数据类型)中;我们没有将 XML 输出加载到各种 SQL Server 表中,而是将 XML 文件本身加载到 SQL Server 数据库中具有 XML 数据类型的列中。

根据客户的要求,这应该只在SSIS中完成。所以我以这种方式使用执行 SQL 任务。(除了 XML 文件,我们还需要ImportDate,FileName等)

连接类型为 OLE DB;我的 SQL 语句如下:

当我只用一个文件进行硬编码时,这很好用。现在,在C:\Mic\...\API_Schemas文件夹中,有许多 XML 文件,我需要加载它们中的每一个,除此之外,获取它们ImportDate(即GETDATE()),以及文件本身的名称(我暂时没有在插入语句)。我必须使用 ForEachLoop 容器,并将执行 SQL 任务放在这个容器中。

所以这个问题有2个方面:

  1. 在执行 SQL 任务中参数化文件名。

  2. 使用 ForEachLoop Container(并将此 Execute SQL Task 放入其中)运行文件夹中的每个 XML 文件。

我使用了一个名为Filename(字符串数据类型)的用户变量,它的值ABC.xml是(文件夹中一系列 XML 文件中的第一个文件);我以这种方式参数化上述 TSQL 查询(见下文):

我将此参数 ( ) 映射到此?执行 SQL 任务 (ParameterMapping选项卡) 中的用户变量文件名。查询在执行 SQL 任务中正确解析!但是,当我执行此 SQL 任务时,我收到此错误:

“参数名称无法识别。”。可能的失败原因:查询有问题,“ResultSet”属性设置不正确,参数设置不正确,或连接未正确建立。

当我将 XML 文件中的数据(使用 XML 源编辑器,使用数据访问模式(来自变量的 XML 数据)等)加载到 SQL Server 表中时,这种情况完全不同。在我们的例子中,我们将 XML 文件本身加载到具有 XML 数据类型的 SQL Server 表 COLUMN 中,并获取有关从文件夹加载的各种 XML 文件的信息。结果我不确定如何使用变量来运行这个包。

  • 谁能首先帮助我如何正确参数化文件名?

  • 以及稍后如何配置 ForEachLoop 容器以从文件夹中读取每个文件?

我对如何在这种情况下使用用户变量感到困惑。

0 投票
1 回答
46 浏览

mysqli - 计算中的用户变量

我正在为赛车队制作一个排名表,我有一个查询来根据团队结果计算所需的数据。我正在努力解决的部分是积分差异(得分和得分之间的差异。

所有查询都在工作,除了

结果我得到了NULL,我猜它很简单,任何帮助都会很棒

0 投票
2 回答
26 浏览

mysql - 查询表以获取用户变量列表

我有以下问题:我有一个table1包含多列col1的表col2

现在我需要所有条目col1- 带有四个 in 的条目col2,为此我使用:

现在我有一个table2我想设置其中col3一个值存储在其中的行的位置@col2fours。为此,我使用:

这行不通。我已经尝试过=having而不是in使用Group_concat. 到目前为止,没有什么对我有用。
我想直接在 mySQL 中执行此操作,因为数据库位于服务器上,我想尽可能减少对数据库的访问。真正的问题涉及的表比 2 多;)。感谢任何输入,谢谢。

0 投票
0 回答
360 浏览

mysql - WHERE 子句中的 MySQL 用户定义变量

在常规的EMP、DEPT表配置(Oracle提供的库存数据)中,我有如下查询要解决:

列出属于 10 或 20 部门的所有 emps 的 empno、ename、sal、job、deptno 和经验,经验为 36 至 40 年,在同一经理下工作,无需佣金

我想出了以下查询:

无论查询是对还是错,当我连续运行此查询 2 次时,第二次运行(以及所有后续运行)都不会产生任何结果(第一次运行会)

我在 StackOverflow 上寻找用户定义的变量问题,其中只有一个 得到了回答,但仍然不是我想要的。在那篇文章中,作者steampowered引用了 MySQL 文档

作为一般规则,您永远不应为用户变量赋值并在同一语句中读取该值。您可能会得到预期的结果,但这不能保证。

如果是这样,那么我们如何防止在 SELECT 和 WHERE CLAUSE 中重复计算?

0 投票
1 回答
3064 浏览

sql-server - 在 Where 子句中带有用户变量的 SSIS 包

简而言之,我正在尝试获取用户输入,将其存储在一个变量中,然后在查询中使用该变量。

首先,我有一个脚本任务,它打开一个带有简单输入文本框和一个按钮的窗口。单击时,文本被放入用户变量中,并弹出一个消息框以显示用户变量中的内容。单击消息框上的确定会关闭消息框和原始窗口。这似乎工作正常。

接下来,我有一个执行 SQL 任务。设置如下:

一般的

  • 结果集 = 无
  • 连接类型 = OLE DB
  • 连接 = localhost.DB
  • SQLSourceType = 直接输入
  • SQLStatement = [下面显示的 SQL 代码]

参数映射

  • 变量名称 = User::VarName
  • 方向 = 输入
  • 数据类型 = VARCHAR
  • 参数名称 = 0
  • 参数大小 = 65535

结果集 - 不适用

表达式 - 不适用

[SQL 代码]

问题:我运行包。文本输入框打开。我输入了我的文本“'CN05','CN06'”(不带双引号),然后单击“确定”。弹出框显示我的输入。我点击确定。工作流继续执行 SQL 任务。在 1 秒内,任务完成并带有绿色检查,没有错误。我验证 TEST.dbo.TEST 已创建,但它是空的。现在,如果我在 SSMS 硬编码最后一位 [...SVY.x in ('CN05','CN06')] 中运行上述代码,我会在大约 4 分钟内拉回超过 500 万条记录。我很困惑为什么这在 SSIS 中不起作用。有什么想法吗?

0 投票
1 回答
1149 浏览

mysql - mysql:根据另一列的值将列设置为上一行的值

尝试执行以下操作:如果当前行的列 c1 等于上一行的 c1,则将列 c3 设置为上一行的列 c2;否则,将 c3 设置为 NULL(或者不将其设置为任何值)。有人能告诉我为什么以下查询导致 c3 的每一行都为空吗?

虚拟列只是为了能够设置变量@c1 和@c2,它们应该存储该行的c1 和c2 值以用于下一行。顺便说一句,我假设 c3 将首先更新是错误的,即它将获得 @c2 的先前值(在 @c2 被分配给当前 c2 之前)?

0 投票
2 回答
1089 浏览

mysql - 插入变量和常量标记的连接表

我有一个具有以下架构的表

我定义了几个变量如下

我需要在表中插入一个由这些用户定义的变量和常量标记的串联组成的条目。我尝试了以下查询

语句执行成功,但插入后myfield等于:

就像插入值的第一部分被忽略一样。我错过了什么?

0 投票
1 回答
44 浏览

php - PHP PDO / MySQLi在查询具有mysql用户变量时不返回行

我想执行并获得以下查询的结果:

返回 0 ,$sql = $PDO->query($query); $sql->rowCount()没有结果行。我已经通过直接在数据库中执行查询来测试它并且它可以工作。