[python] psycopg2
Форум — Development
Всем доброго времени суток!
Последние пол часа пляшу с бубном, и все никак не могу понять где же баг...
Вобщем имеется скрипт, который берет из одной таблички PostrgeSQL данные, и пересчитав их кладет в другую табличку. Собственно SELECT проходит на ура, а с INSERT'ом проблемы:
#!/usr/bin/python
# -*- coding: utf-8 -*-
import sys, os, time, atexit
import psycopg2
from pprint import pprint
if __name__ == "__main__":
conn = psycopg2.connect("dbname='nnm' user='postgres' host='10.25.12.126' password=''")
insert_cm_stat="""INSERT INTO cm_stat(
obj_id,
pkt64,
byte64
)
VALUES(%(o_id)s,
%(Pkt64)s,
%(Byte64)s)"""
#...
#...
print "====="
cur = conn.cursor()
pprint(values);
try:
cur.execute(insert_cm_stat,values)
except Exception, err:
print err
print "fuck..."
print "---===---"
А это вывод... Никакие exception не наблюдаются:
#python qq.py
=====
{'Byte64': 1201998,
'Pkt64': 10420,
'o_id': 12L}
---===---
Казалось бы: «Наверное все хорошо...» Но не тут то было:
# psql -h 10.25.12.126 -d nnm -U postgres
psql (9.1.1, server 8.2.17)
WARNING: psql version 9.1, server version 8.2.
Some psql features might not work.
Type "help" for help.
nnm=# select * from cm_stat;
id | ctime | o_id | pkt64 | byte64
----+-------+--------+-------+---------
(0 rows)
nnm=# \d cm_stat;
Table "public.cm_stat"
Column | Type | Modifiers
--------------------------+-----------------------------+------------------------------------------
id | bigint | not null default nextval('qq'::regclass)
ctime | timestamp without time zone | default now()
o_id | bigint | not null
pkt64 | bigint |
byte64 | bigint |
Indexes:
"cm_stat_pkey" PRIMARY KEY, btree (id)
Foreign-key constraints:
"o_id_refkey" FOREIGN KEY (o_id) REFERENCES cm_objects(id)
В общем в базе пусто. Подскажите где ошибка и что копать? Дебаггить psycopg2 желанием не горю.