问题标签 [cfstoredproc]

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 投票
0 回答
602 浏览

mysql - cfstoredproc, cfprocparam 问题与mysql order by

我一直在尝试使用 cfc 组件设置一个简单的 cfstoredproc,该组件将两个参数传递给 mysql 存储过程并按查询排序。

这是测试代码:

测试.cfm

测试新闻.cfc

在 mysql 存储过程中,我有:

虽然 cf 没有抛出任何错误消息,正如我所看到的 cfprocparam,更具体地说,cfsqltype 导致了这个问题,因为它什么也没传递!?我也尝试对 .cfm 页面上的 cfquery 和 cfqueryparam 标记(而不是 cfstoredproc 和 cfc)做同样的事情,但问题仍然存在。

cfm 页面上的 cfdump 返回... order by ? 降序限制 ?,25;

我知道如何使它与 cfm 页面上的 cfquery 和 cfqueryparam 一起工作,但不知道如何处理 cfprocparam,所以是否有解决此问题的方法。我非常感谢您对此提供的帮助。

编辑 这里是整个mysql存储过程

编辑1:

mysql存储过程

0 投票
2 回答
1352 浏览

asp.net-mvc - 在 MVC5/EF 6 中使用 codefirststoredprocs 时出现超时问题。从存储的 proc dbo 读取时出错。[...]:超时已过期

为了一次处理近 7 万条记录,我在我的应用程序中使用了 codefriststoredprocs 2.5.0。由于记录很少,一切正常,但有大量数据,我收到“等待操作超时”异常。我尝试通过以下方式将默认命令超时值从 30 秒修改为 600 秒。

但仍会在 30 秒后收到连接超时消息。我还将 web.config 设置连接超时值修改为 600 秒(我知道这与命令超时值不同,但试一试)。我觉得问题出在 codefirststoredprocs 库上,它在执行存储过程时将命令超时值更改为默认值。有什么办法可以解决这个问题,或者我应该采用在我的应用程序中使用存储过程的替代方法。

提前致谢。

0 投票
3 回答
260 浏览

coldfusion - 管理在整个网站上使用的数据库查询

随着我的应用程序的增长,我注意到我正在跨多个网页重用大量数据库查询。

目前,我已经使用 .CFM 文件完成了这项工作,该文件具有许多<cfstoredproc>标签,这些标签包含在需要数据库数据的每个页面上。我所做的就是将这些存储过程执行包装在一个<cfif>标签中,该标签测试调用页面的名称是什么,然后执行适当<cfstoredproc>的代码块。

我不是任何事情的专家,但这对我来说感觉不对。我只是不知道如何正确管理我的所有数据库查询,以便可以在整个网站的任何 CFM 页面上共享它们。例如,一个页面可能需要“GetUsers”存储过程,而另一个页面可能需要“GetOrders”。

我即将着手创建一个 CFC,它包含每个单独的<cfstoredproc><cfquery>在其自己的方法/函数中。例如:

然后在 .CFM 主页面上,我将调用返回数据所需的组件和方法。这是实现数据库查询管理的好方法吗?

0 投票
1 回答
921 浏览

oracle - ColdFusion - cfproc 参数:如何使用 db 定义的变量 %TYPE 调用存储过程?

我在 Oracle 中有一个存储过程。其中一个输入参数是定义的类型(见下文)。每当我调用 cfstoredproc 时出现的错误是“表达式的类型错误 ORA-06550”。它是一个格式化的 varchar,它是一个表格列。没有与之匹配的 CFPROCPARAM 类型。

类型是包定义的特定格式(表列):EMAIL_ADDRESSES_TABLE.USER_ID%TYPE。表列 USER_ID 为:USER_ID VARCHAR2(8 BYTE)

USER_ID 是一个用 0 填充的数字,例如 '00001234'

我的电话:

存储过程函数:

我从系统得到的错误是:

0 投票
1 回答
730 浏览

stored-procedures - 使用 cfstoredproc 创建存储过程

是否可以使用 cfstoredproc创建存储过程?当我运行以下命令时,我在 'GO' 附近得到 Incorrect syntax

我的文件.sql

运行 cfquery 的结果

0 投票
1 回答
2617 浏览

coldfusion - cfstoredproc 在 CF11 更新 5 后不再返回结果

我有几个 SQL Server 2008 存储过程。我通过 cfstoredproc 给他们打电话。我在 4 月 17 日运行 CF 服务器更新后,CF 不再获得结果。这是其中一个调用:

我收到一个未定义的 newUserID 错误。同样,在更新 5 之前,一切都运行良好。

如果我在 SSMS 中调用存储的过程,一切正常。当我在数据库上看到我的更新和插入时,cfstoredproc 工作。但是,它根本不会再返回任何结果。返回码为 0,正如我提到的,一切运行都没有任何错误。

我试过了 :

没有运气。有任何想法吗?提前致谢。

0 投票
1 回答
479 浏览

sql-server-2008 - ColdFusion 2016 升级给出存储过程错误

我们正在升级到 ColdFusion 2016 以使用 SqlServer 2017。我们当前的版本(ColdFusion 10/SqlServer 2008)运行良好。

我们正在开发环境中测试我们的代码以发现它的任何问题,我不断遇到同样的错误,这有点神秘。我不确定它是 ColdFusion 2016 和 SqlServer2008 的组合,还是只是从 CF10 升级到 CF2016。它涉及 CFStoredProc 命令。

代码是:

当页面运行时,我收到以下错误:

我在文档中找不到任何关于为什么会引发错误的信息。我想知道是否有人对此有过类似的经历,并且可以指出我的修复方向,因为同样的错误发生在许多地方。

谢谢

0 投票
1 回答
393 浏览

sql-server-2008 - 如何处理 ColdFusion 存储过程结果中的错误?

我使用 ColdFusion 调用存储过程来插入或更新用户数据。这两个事务在两个过程中分开。我的 SQL 代码应该返回行数 1 或 0 取决于事务是否成功。如果交易失败,我想知道在这种情况下处理错误的最佳方法是什么?两者cfstoredproc都包含在 try/catch 块中,但如果 SQL 过程中发生错误,我Count在结果集中的变量将返回 0,并且 try/catch 不会注册从过程返回的错误。这是我的代码示例:

上面的代码返回 Count 列/变量,正如我在 Result set 中已经提到的那样。如果进程成功执行,用户将收到消息通知。如果有什么问题,我想给他们发一条在我的catch区块中的消息。这是SQL代码:

我只展示了插入 SQL 代码,因为更新过程是相同的。当我使用时,如果出现问题,我会看到此消息。当我试图插入已经存在的主键时,这只是一个例子:

ColdFusion 没有发现这个错误。当我使用 ColdFusion 在结果集中调用存储过程时,有没有办法捕捉到这个错误?

0 投票
2 回答
49 浏览

sql-server - 在存储过程查询中使用 if 语句?

我正在尝试将 ColdFusion 查询转换为存储过程。我原来的查询如下

如您所见,我的查询中有 IF 语句,因此如果满足某些条件,它将更新这些字段。如果不满足这些条件,则不会将它们包含在更新中。

所以我想要这样的东西,但我不确定这在存储过程中是否可行

我基本上希望传入可选参数,并根据它们的值更新该字段或不更新该字段。我讨厌必须为每种可能性为每个 IF 语句编写单独的单独查询。那么这甚至可能吗,或者我是否以错误的方式解决这个问题?