Re: database not accepting data properly

Поиск
Список
Период
Сортировка
От Adrian Klaver
Тема Re: database not accepting data properly
Дата
Msg-id 56CB2C2C.1010307@aklaver.com
обсуждение исходный текст
Ответ на database not accepting data properly  (Shaan Repswal <shaun.reapswaal@gmail.com>)
Список psycopg
On 02/22/2016 02:03 AM, Shaan Repswal wrote:
Ccing list.
> That was so stupid of me. I am so sorry. When I use a script to query
> the database, the fourth column of my database is of type "interval" I
> store datetime.timedelta() objects in it from Python 3.4 But everytime I
> query it with the attached querying script it always returns
> datetime.timedelta(0) as the values of my sessionduration column.

So to be clear no error is thrown, correct?

You are just not seeing what you expect.

>
> I am storing them there from the testProductivityApp.py script that I
> sent to you in an earlier email. You will need to install GTK 3 for
> Python 3.4 to run that script. So bascally the datetime.timedelta()
> objects are stored, but they are always datetime.timedelta(0,0,0.0) Any
> idea why that could be happening?

First what are the values in that field in the database itself?

Second could it be (datetime.datetime.now() - self.start_time) is
returning the correct result. In other words that now() and
self.start_time are the same. Have you looked at what those values are
as the script runs?

I ask because you have self.start_time created twice in your code:

1) In the __init__ as self.start_time = datetime.datetime

2) In startRecording as self.start_time = datetime.datetime.now()

I am not sure, but I have to believe that is causing at least part of
your issue.


>
> However to troubleshoot the program I wrote another micro script (also
> sent with the last email) called manualaitestdbentry.py which was to
> check if I could store datetime.timedelta() objects in the postgresql
> database, turns out I can store the datetime.timedelta() objects with
> their seconds, days and microseconds attributes intact.
>
> On Sun, Feb 21, 2016 at 9:28 PM, Adrian Klaver
> <adrian.klaver@aklaver.com <mailto:adrian.klaver@aklaver.com>> wrote:
>
>     On 02/21/2016 02:45 AM, Shaan Repswal wrote:
>
>         Hey guys, I hope I used the Mailing List properly. I am trying
>         to upload
>         a datetime.timedelta object into a column of type interval...
>         But when I
>         query it says datetime.interval(0)
>
>
>     Can you post the actual error message?
>
>     What are you querying that gets you datetime.interval[0]?
>
>
>
>         here are the lines where the error probably is:-
>         print(cur.mogrify("""SELECT %s, %s, %s, %s""",
>         (self.start_time.date(),
>         self.start_time.time(), datetime.datetime.now() - self.start_time,
>         desc_text)))
>                   cur.execute("""INSERT INTO sessionlogs(sessiondate,
>         sessiontime, sessionduration, sessiondesc)
>                               VALUES(%s, %s, %s, %s);""",
>         (self.start_time.date(), self.start_time.time(),
>         datetime.datetime.now()
>         - self.start_time, desc_text))
>
>         although when I wrote another script to enter a specific code,
>         it was
>         working just fine.
>
>         datetime.datetime.now() - self.start_time is the time interval which
>         seems to be where the error is.
>
>         when I did this :-
>         cur.execute("""INSERT INTO sessionlogs(sessiondate, sessiontime,
>         sessionduration, sessiondesc)
>                       VALUES (%s, %s, %s, %s)""",
>         (datetime.datetime.now().date(), datetime.datetime.now().time(),
>         datetime.timedelta(1, 18268), "This is a manual entry"))
>
>         It was working quite fine.
>
>         I will attach the two scripts
>
>         Sorry for the uber messy code. I hope you can read through my whole
>         script as it isn't very big. I am using Gtk 3+ here so be
>         warned... :P
>
>
>
>
>
>     --
>     Adrian Klaver
>     adrian.klaver@aklaver.com <mailto:adrian.klaver@aklaver.com>
>
>


--
Adrian Klaver
adrian.klaver@aklaver.com


В списке psycopg по дате отправления:

Предыдущее
От: Adrian Klaver
Дата:
Сообщение: Re: database not accepting data properly
Следующее
От: Adrian Klaver
Дата:
Сообщение: Re: database not accepting data properly