Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl: the Markov chain saw
 
PerlMonks  

Re^2: Code flow not going to while loop

by dipit (Sexton)
on Aug 02, 2017 at 20:09 UTC ( [id://1196587]=note: print w/replies, xml ) Need Help??


in reply to Re: Code flow not going to while loop
in thread Code flow not going to while loop

Hi, This is really useful information and from the starting i knew there is something wrong with parsing dates. I have read the doc, thanks for that. But now it is giving some ambiguity error and i do not know why it is coming.
DBD::DB2::db prepare failed: [IBM][CLI Driver][DB2/AIX64] SQL0245N Th +e invocation of routine "TIMESTAMP" is ambiguous. The argument in pos +ition "1" does not have a best fit. SQLSTATE=428F5 DBD::DB2::st execute failed: [IBM][CLI Driver][DB2/AIX64] SQL0245N Th +e invocation of routine "TIMESTAMP" is ambiguous. The argument in pos +ition "1" does not have a best fit. SQLSTATE=428F5 [IBM][CLI Driver][DB2/AIX64] SQL0245N The invocation of routine "TIME +STAMP" is ambiguous. The argument in position "1" does not have a bes +t fit. SQLSTATE=428F5

Replies are listed 'Best First'.
Re^3: Code flow not going to while loop
by poj (Abbot) on Aug 02, 2017 at 21:03 UTC

    Seems like TIMESTAMP can take a 2nd argument for microsecond precision so try

    SELECT DISTINCT Fid_Cust FROM Session WHERE Dat_End BETWEEN TIMESTAMP(?,0) AND TIMESTAMP(?,0)
    
Re^3: Code flow not going to while loop
by chacham (Prior) on Aug 02, 2017 at 20:25 UTC

    You might need to change your values to match those expected by TIMESTAMP.

      These are the same strings used in database. I cannot change them. You can see the code and i have run my test server also.
      db2 "select distinct fid_cust from session where DAT_END between TIMES +TAMP('2017-01-01 00:00:00') and TIMESTAMP('2017-01-31 00:00:00')" FID_CUST -------------------------------------------------- Lena2 TEST

        Hmm... Maybe the client on your test server is supplying a default that the code is not. Let's take a look at TIMESTAMP.

        A string of length 14 that is a string of digits that represents a valid date and time in the form yyyyxxddhhmmss, where yyyy is the year, xx is the month, dd is the day, hh is the hour, mm is the minute, and ss is the seconds.

        You could provide that if you remove the spaces and colons.

        If the arguments include only date information, the time information in the result value is all zeros.

        I do not know if your code demands it, but all your times are zeroes. Meaning, you could just as well remove the time part and TIMESTAMP() will return the same result.

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://1196587]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others surveying the Monastery: (5)
As of 2024-04-24 06:16 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found