Found it, or at least a clue.

R>SET VAR vHH TEXT='00:'

R>SET VAR vHHTime='00:'

R>SHO VAR
Variable           = Value                                   Type
------------------   ------------------------------          --------
#DATE              = 09/24/2008                               DATE    
#TIME              = 11:38:44.987 AM                          TIME    
#PI                = 3.14159265358979                         DOUBLE  
SQLCODE            = 0                                        INTEGER 
SQLSTATE           = HY000                                    TEXT    
#NOW               = 09/24/2008 11:38:45.065 AM               DATETIME
vHH                = 00:                                      TEXT    
vHHTime            = 12:00:00.000 AM                          TIME    


It looks like RB interprets a string-literal like '00:' as a TIME type,
even within the paren's of an expression.

This sorta' makes sense to me, but I don't recall ever having
encountered it.

So, when I saw this, I used the variable and I got what I wanted:

UPDATE INDIVIDUAL_RESULTS
   SET TimeTXT=(.vHH + TimeTXT)
 WHERE SeasonCCYY=2008
   AND MeetNUM <> 3
   AND TimeTXT LIKE '__:__'

(Note: I did have my single-character wildcards incorrect on first
message.)


Worked fine.

Steve


-----Original Message-----
From: [email protected] [mailto:[EMAIL PROTECTED] On Behalf Of Wills,
Steve
Sent: Wednesday, September 24, 2008 11:37am 11:37
To: RBASE-L Mailing List
Subject: [RBASE-L] - Interesting Problem Trying to (Text + Text),
Interpreted as (Time + Text) ...

Maybe not so interesting, but at least curious, a little anomaly in RB
or my brain.

I have a table with a field, `TimeTXT` TEXT (18), which holds
text-values for elapsed time, in the form 'MM:SS'.  I have just received
a set of data to import that also has the 'HH:' components.  So, I
figured I'd just add the 'HH:' to the other strings, to make 'em all
uniform.  In each and every instance, the actual value of 'HH:' is
'00:'.  

Should be easy, right?

So, I tried this - don't worry about the meaning of the WHERE-clause:

R>SELECT TimeTXT, ('00:' + TimeTXT) 
    FROM INDIVIDUAL_RESULTS 
   WHERE SeasonCCYY=2008 
     AND MeetNUM <> 3 
     AND TimeTXT LIKE '??:??'


Whereupon I received this error message:

-ERROR- TIME cannot be added to TEXT. (2151)


It seems that one of my 2 operands is being interpreted as a TIME type.
But how?  And what do I do?


Thanks,
Steve in Memphis




J. Stephen Wills
Program Manager, Research Informatics
Office of the Vice Chancellor for Research
University of Tennessee Health Science Center
62 S. Dunlap, Suite 400
Memphis, TN  38163
Office: 901-448-2389
FAX    : 901-448-7133


Reply via email to