无论何时我使用查询,我都需要登录数据库(因为我没有ODBC设置来执行此操作)
<cfquery name="rsUser" datasource="dbname" username="admin" password="adminpass">
    SELECT * 
    FROM dbo.UsersView
    WHERE UserID = #session.userid#
</cfquery>
我不喜欢的部分是每次进行查询时都可以看到用户名和密码.我可以使用#parameter#但这只是一个小改进.除了在服务器上设置ODBC之外的任何其他想法?
所以Coldfusion今天表现得很糟糕.我似乎无法更新数据库.
例如,如果我尝试查询:
<CFQUERY DATASOURCE="tr3" NAME="qryData2">
    SELECT *
    FROM UsersExpDataTR2
    WHERE session_id = 2 AND p1_id = 2 AND round = 3
</CFQUERY>
qryData2.recordcount等于1.
但是当我尝试运行此代码时
<CFQUERY DATASOURCE="tr3" NAME="uMatch">
    UPDATE UsersExpDataTR2
    SET p1_total = 13 AND p1_fine = 1
    WHERE session_id = 2 AND p1_id = 2 AND round = 3
</CFQUERY>
p1_total的值变为0,p1_fine不会从其原始值更改.
我打算迟到重启服务器,但我希望我没有,如果有人能告诉我这些奇怪的答案?
注意:在代码本身我使用变量来存储和查询[显然].我只是用数字作为测试.
更新:它们都是整数数据类型.虽然在另一种情况下我也遇到了双重值的问题.
我有一个更新查询,我传递一个名为"newdata"的JavaScript数组,显然,这不起作用所以我不知道如何将我的JavaScript变量传递给ColdFusion以运行更新查询.我怎么能看到网上冲浪?ColdFusion无权访问Javascript变量.这是我的代码,问候!
<cfquery name="updatereserva" datasource="Prueba">
    UPDATE reserva_habitac 
    SET FechaENTRADA = newdata["#firstdate#"]
    WHERE idRESERVA = newdata["idreserva"]                  
</cfquery>
还有另一种方法吗?
我试图从<cfquery>执行SUMPRODUCT计算的单个数值中获取单个数值.我知道以下代码可以生成所需的值(通过验证<cfdump>).我只需要知道如何将这个值作为我可以在a中进一步操作并在a中<cfset>显示的东西<cfoutput>.
这是我正在使用的代码:
<cfquery datasource="db" name="mQry">
    SELECT 
        SUM(factors.wt * temp.dp) 
    FROM
        factors
            INNER JOIN
        temp ON factors.fpID = temp.fpID
    WHERE
        factors.fpID IS NOT NULL
        AND temp.fpID IS NOT NULL  
</cfquery>
<cfdump var="#mQry#">
所以我有这个查询来从我的数据库表中获取结果列in和out.
<cfquery name="getInfo" datasource="testing">
    select in, out from test
</cfquery>
现在我需要做的是采取一个静态数字,例如; 100,并从该静态数字添加in和减去out.
所以这就是我的尝试:
<cfquery name="getInfo" datasource="testing">
    select in, out from test
</cfquery>
<table>
    <cfset balance = 100>
    <cfloop query="getInfo">
    <cfset balance = balance + in - out> <!--- THIS IS WHAT I TRIED --->
    <tr>
        <td>#in#</td>
        <td>#out#</td>
        <td>#balance#</td>
    </tr>
    </cfloop>
</table>
所以你可以看到,我确实设置了这段代码<cfset balance = 100 + in - out>.基本上我要做的是获得余额的原始值100,并添加in的值并减去out的值并将其保存为新的余额.
但是,我收到一个错误说The value '' cannot be converted to a number.. …
我想在CF中编写一个函数,该函数具有返回多列的查询。我研究并阅读,仅能找到带有sql查询的函数示例,仅返回结构的表视图。
如何在CF中使用SQL查询编写函数并以文本格式输出每一列
我一直在搜索它,并在教程网站上寻找运气,
<cffunction name="queryListEmployee" returntype="query" output="false">
<cfargument name="EMPID" type="numeric" default="1"/>
<cfset var listEmployee = ""/>
    <cfquery name="local.listContractors" datasource="DB">
        SELECT E.FIRSTNAME, E.LASTNAME
        FROM EMPLOYEE E
        WHERE E.ID = <cfqueryparam value="#arguments.EMPID#" cfsqltype="cf_sql_decimal" scale="0"/>
    </cfquery>
<cfreturn local.listEmployee/>
我希望能够输出列名称,例如queryListEmployee.firstname和queryListEmployee.lastname