LINUX.ORG.RU

[python] psycopg2


0

1

Всем доброго времени суток!

Последние пол часа пляшу с бубном, и все никак не могу понять где же баг...

Вобщем имеется скрипт, который берет из одной таблички 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 желанием не горю.


flush\commit делать кто будет?

hizel ★★★★★ ()

Блин, я думал psycopg2 — это какая-то новая версия psyco :)

buddhist ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.