Tek-Tips is the largest IT community on the Internet today!

Members share and learn making Tek-Tips Forums the best source of peer-reviewed technical information on the Internet!

  • Congratulations Chris Miller on being selected by the Tek-Tips community for having the most helpful posts in the forums last week. Way to Go!

More 4.1 upgrade fun

Status
Not open for further replies.

CryoGen

MIS
Apr 15, 2004
86
US
OK, here's another query that worked OK in 3.2 that doesn't in 4.1. This query inserts a date period for a report program we have running in ColdFusion. The values for the insert are being passed from a form to the action page that the query below is on.

Code:
    <CFQUERY DATASOURCE="#REQUEST.DataSource#">
    INSERT INTO report (period, marker, t_date) 
	  VALUES ('#Form.period#', '#temp#', '#Form.t_date#') 
    </CFQUERY>
	
    <cfquery name="qGetitBack" DATASOURCE="#REQUEST.DataSource#">
    select report_id 
	from report 
	where marker = '#temp#' 
    </CFQUERY>

Here's the error it's throwing (below) ... specifically, it's saying the error is on line 131. The insert works correctly right up until it goes to insert the date, and then it seems to want to insert every date in that table column. Like I said, this worked fine in 3.2 but not so in 4.1. Any help is appreciated.

Code:
129 :     <!--- Use CFQUERY to insert all html form field values into the Report table --->
130 :     <CFQUERY DATASOURCE="#REQUEST.DataSource#">
131 :     INSERT INTO report (period, marker, t_date) VALUES ('#Form.period#', '#temp#', '#Form.t_date#') 
132 :     </CFQUERY>
133 :     <cfquery name="qGetitBack" DATASOURCE="#REQUEST.DataSource#">

SQL 	   INSERT INTO report (period, marker, t_date) VALUES ('27 Sep-1 Oct 2004', '0.166676367198', '{ts '2004-10-01 00:00:00'}{ts '2004-10-08 00:00:00'}{ts '2004-10-15 00:00:00'}{ts '2004-10-22 00:00:00'}{ts '2004-10-29 00:00:00'}{ts '2004-11-05 00:00:00'}{ts '2004-11-12 00:00:00'}{ts '2004-11-19 00:00:00'}{ts '2004-11-26 00:00:00'}{ts '2004-12-03 00:00:00'}{ts '2004-12-10 00:00:00'}{ts '2004-12-17 00:00:00'}{ts '2004-12-24 00:00:00'}{ts '2004-12-31 00:00:00'}{ts '2005-01-05 00:00:00'}{ts '2005-01-14 00:00:00'}{ts '2005-01-21 00:00:00'}{ts '2005-01-29 00:00:00'}{ts '2005-02-04 00:00:00'}{ts '2005-02-11 00:00:00'}{ts '2005-02-18 00:00:00'}{ts '2005-02-25 00:00:00'}{ts '2005-03-04 00:00:00'}{ts '2005-03-11 00:00:00'}{ts '2005-03-18 00:00:00'}{ts '2005-03-25 00:00:00'}{ts '2005-04-01 00:00:00'}{ts '2005-04-08 00:00:00'}{ts '2005-04-15 00:00:00'}{ts '2005-04-22 00:00:00'}{ts '2005-04-29 00:00:00'}{ts '2005-05-06 00:00:00'}{ts '2005-05-13 00:00:00'}{ts '2005-05-20 00:00:00'}{ts '2005-05-27 00:00:00'}{ts '2005-06-03 00:00:00'}{ts '2005-06-10 00:00:00'}{ts '2005-06-17 00:00:00'}{ts '2005-06-24 00:00:00'}{ts '2005-07-01 00:00:00'}{ts '2005-07-08 00:00:00'}{ts '2005-07-15 00:00:00'}{ts '2005-07-22 00:00:00'}{ts '2005-07-29 00:00:00'}{ts '2005-08-05 00:00:00'}{ts '2005-08-12 00:00:00'}{ts '2005-08-19 00:00:00'}{ts '2005-08-26 00:00:00'}{ts '2005-09-02 00:00:00'}{ts '2005-09-09 00:00:00'}{ts '2005-09-16 00:00:00'}{ts '2005-09-23 00:00:00'}{ts '2005-09-30 00:00:00'}{ts '2005-10-07 00:00:00'}{ts '2005-10-14 00:00:00'}{ts '2005-10-21 00:00:00'}{ts '2005-10-28 00:00:00'}{ts '2005-11-04 00:00:00'}{ts '2005-11-11 00:00:00'}{ts '2005-11-18 00:00:00'}{ts '2005-11-25 00:00:00'}{ts '2005-12-02 00:00:00'}{ts '2005-12-09 00:00:00'}{ts '2005-12-16 00:00:00'}{ts '2005-12-23 00:00:00'}{ts '2005-12-30 00:00:00'}')
 
That's certainly not valid SQL and couldn't have worked in a previous version. The embedded apostrophes in the "t_date" field need to be either doubled ('') or escaped (\'). Even then, it still looks like a very strange date field.
 
I would suspect a coldfusion driver incompatibility. That's definitely invalid SQL, like Tony said. It looks like CF is dropping a string representation of an array into the timestamp field instead of iterating over them.
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor

Back
Top