As far as I know, yes, it does recompile every time. And it is quite
intuitive, just look at the debug of what is sent to the DB server for
something like:

SELECT M
FROM S
WHERE W = '#url.k#'

and

SELECT M
FROM S
WHERE W = 'huh'

Assuming url.k is 'huh' you get the same thing sent to the DB server.
However, if you use cfqueryparam what is sent:

SELECT M
FROM S
WHERE W = ?

? = 'huh'

So the DB compiles (only once) the query and puts in 'huh' as the argument.
Summarizing it doesn't matter whatever 'huh' is static or from a variable,
it is still treated the same way. Also, it would help to remember that
#your_var_here# causes the value of the var to be printed and it becomes
static text.

TK

  -----Original Message-----
  From: Ian Skinner [mailto:[EMAIL PROTECTED]
  Sent: Monday, December 08, 2003 1:47 PM
  To: CF-Talk
  Subject: RE: The Value of CFQUERYPARAM

  Even though the value is static and unchanging, the query will be
recompiled
  every time?  This seems to be a bit counter intuitive to me, but it is
  basically what I'm trying to confirm.

  --------------
  Ian Skinner
  Web Programmer
  BloodSource
  www.BloodSource.org
  Sacramento, CA

  -----Original Message-----
  From: Tom Kitta [mailto:[EMAIL PROTECTED]
  Sent: Monday, December 08, 2003 10:43 AM
  To: CF-Talk
  Subject: RE: The Value of CFQUERYPARAM

  Use CFQUERYPARAM as the DB engine will only compile you query once and
  hopefully cache it. Otherwise it will re-compile every time.

  TK
    -----Original Message-----
    From: Ian Skinner [mailto:[EMAIL PROTECTED]
    Sent: Monday, December 08, 2003 1:36 PM
    To: CF-Talk
    Subject: The Value of CFQUERYPARAM

    When writing a select statement, if I have a part of a WHERE clause that
    will be static, always the same value, and this value is not passed in
  with
    a variable or constant, is there any inherent value in <cfqueryParam
...>
    tags?

    An Example:

    WHERE STATUS = <cfqueryParam value="M" ...>

    or

    WHERE STATUS = 'M'

    Is there any real advantage of one of these forms over the other?

    Just to repeat, these are hard coded, unchanging values NOT passed in
with
    variables or constants.  I understand the value of the <cfqueryParam>
tags
    in conjunction with passing in data with variables, especially data from
    user forms.

    --------------
    Ian Skinner
    Web Programmer
    BloodSource
    www.BloodSource.org
    Sacramento, CA

    Confidentiality Notice:  This message including any
    attachments is for the sole use of the intended
    recipient(s) and may contain confidential and privileged
    information. Any unauthorized review, use, disclosure or
    distribution is prohibited. If you are not the
    intended recipient, please contact the sender and
    delete any copies of this message.
     _____
[Todays Threads] [This Message] [Subscription] [Fast Unsubscribe] [User Settings]

Reply via email to