我是Python和psycopg2中的新手,並且存在插入簡單問題。插入問題和psycopg2
這是我的表:
CREATE TABLE tabla
(
codigo integer NOT NULL DEFAULT nextval('dato_codigo_seq'::regclass),
informacion character(30) NOT NULL,
CONSTRAINT dato_pkey PRIMARY KEY (codigo)
)
領域codigo
是串行。
當我做了一句:
cursor.execute("INSERT INTO tabla informacion) VALUES (%s)",("abcdef"))
的PostgreSQL拋出一個異常。
我必須做
cursor.execute("INSERT INTO tabla (codigo,informacion) VALUES (nextval(%s),%s)",
("dato_codigo_seq","abcdef"))
其中dato_codigo_seq
是序列到外地codigo
。
我的問題ISL我可以這樣做
insert into tabla(informacion)values('asdsa')
,讓PostgreSQL的處理串行現場治療的句子?
我可以這樣做:
cursor.execute("INSERT INTO tabla informacion) VALUES ("+valor+")")"
但這句話可以使用SQL注入攻擊。
就是這樣。感謝您閱讀我的問題,並對我的英語不好(我會說西班牙語)感到抱歉。
Bienvenidos一個StackOverflow上。 – bernie 2010-05-26 03:26:34
也有類似的問題。然而,'''cursor.execute(「INSERT INTO tabla informacion)VALUES(」+ valor +「)」)「'''type line沒有保存在數據庫中,它只是增加了我的db序列號 – 2011-10-18 00:28:51