sql INSERT in python (postgres, cursor, execute)
up vote
0
down vote
favorite
I had no problem with SELECT
ing data in python from postgres database using cursor/execute. Just changed the sql to INSERT
a row but nothing is inserted to DB. Can anyone let me know what should be modified? A little confused because everything is the same except for the sql statement.
<!-- language: python -->
@app.route("/addcontact")
def addcontact():
# this connection/cursor setting showed no problem so far
conn = pg.connect(conn_str)
cur = conn.cursor(cursor_factory=psycopg2.extras.DictCursor)
sql = f"INSERT INTO jna (sid, phone, email) VALUES ('123','123','123')"
cur.execute(sql)
return redirect("/contacts")
python sql database postgresql database-cursor
add a comment |
up vote
0
down vote
favorite
I had no problem with SELECT
ing data in python from postgres database using cursor/execute. Just changed the sql to INSERT
a row but nothing is inserted to DB. Can anyone let me know what should be modified? A little confused because everything is the same except for the sql statement.
<!-- language: python -->
@app.route("/addcontact")
def addcontact():
# this connection/cursor setting showed no problem so far
conn = pg.connect(conn_str)
cur = conn.cursor(cursor_factory=psycopg2.extras.DictCursor)
sql = f"INSERT INTO jna (sid, phone, email) VALUES ('123','123','123')"
cur.execute(sql)
return redirect("/contacts")
python sql database postgresql database-cursor
Could u please try: sql = f"INSERT INTO jna ("sid", "phone", "email") VALUES ('123','123','123')
– Eray Balkanli
Nov 11 at 16:14
@ErayBalkanli Thanks for the comment, but that didn't work either..
– PuffedRiceCrackers
Nov 11 at 16:19
1
ok. Can you please try adding conn.commit() after the execute(sql) line?
– Eray Balkanli
Nov 11 at 16:21
add a comment |
up vote
0
down vote
favorite
up vote
0
down vote
favorite
I had no problem with SELECT
ing data in python from postgres database using cursor/execute. Just changed the sql to INSERT
a row but nothing is inserted to DB. Can anyone let me know what should be modified? A little confused because everything is the same except for the sql statement.
<!-- language: python -->
@app.route("/addcontact")
def addcontact():
# this connection/cursor setting showed no problem so far
conn = pg.connect(conn_str)
cur = conn.cursor(cursor_factory=psycopg2.extras.DictCursor)
sql = f"INSERT INTO jna (sid, phone, email) VALUES ('123','123','123')"
cur.execute(sql)
return redirect("/contacts")
python sql database postgresql database-cursor
I had no problem with SELECT
ing data in python from postgres database using cursor/execute. Just changed the sql to INSERT
a row but nothing is inserted to DB. Can anyone let me know what should be modified? A little confused because everything is the same except for the sql statement.
<!-- language: python -->
@app.route("/addcontact")
def addcontact():
# this connection/cursor setting showed no problem so far
conn = pg.connect(conn_str)
cur = conn.cursor(cursor_factory=psycopg2.extras.DictCursor)
sql = f"INSERT INTO jna (sid, phone, email) VALUES ('123','123','123')"
cur.execute(sql)
return redirect("/contacts")
python sql database postgresql database-cursor
python sql database postgresql database-cursor
asked Nov 11 at 16:12
PuffedRiceCrackers
445
445
Could u please try: sql = f"INSERT INTO jna ("sid", "phone", "email") VALUES ('123','123','123')
– Eray Balkanli
Nov 11 at 16:14
@ErayBalkanli Thanks for the comment, but that didn't work either..
– PuffedRiceCrackers
Nov 11 at 16:19
1
ok. Can you please try adding conn.commit() after the execute(sql) line?
– Eray Balkanli
Nov 11 at 16:21
add a comment |
Could u please try: sql = f"INSERT INTO jna ("sid", "phone", "email") VALUES ('123','123','123')
– Eray Balkanli
Nov 11 at 16:14
@ErayBalkanli Thanks for the comment, but that didn't work either..
– PuffedRiceCrackers
Nov 11 at 16:19
1
ok. Can you please try adding conn.commit() after the execute(sql) line?
– Eray Balkanli
Nov 11 at 16:21
Could u please try: sql = f"INSERT INTO jna ("sid", "phone", "email") VALUES ('123','123','123')
– Eray Balkanli
Nov 11 at 16:14
Could u please try: sql = f"INSERT INTO jna ("sid", "phone", "email") VALUES ('123','123','123')
– Eray Balkanli
Nov 11 at 16:14
@ErayBalkanli Thanks for the comment, but that didn't work either..
– PuffedRiceCrackers
Nov 11 at 16:19
@ErayBalkanli Thanks for the comment, but that didn't work either..
– PuffedRiceCrackers
Nov 11 at 16:19
1
1
ok. Can you please try adding conn.commit() after the execute(sql) line?
– Eray Balkanli
Nov 11 at 16:21
ok. Can you please try adding conn.commit() after the execute(sql) line?
– Eray Balkanli
Nov 11 at 16:21
add a comment |
2 Answers
2
active
oldest
votes
up vote
1
down vote
accepted
You have to commit your transaction by adding the line below after execute(sql)
conn.commit()
Ref: Using INSERT with a PostgreSQL Database using Python
This one totally worked. Thanks!
– PuffedRiceCrackers
Nov 12 at 3:48
add a comment |
up vote
2
down vote
first look at your table setup and make sure your variables are named right in the right order, format and all that, if your not logging into the specific database on the sql server it won't know where the table is, you might need to send something like 'USE databasename' before you do your insert statement so your computer is in the right place in the server.
I might not be up to date with the language but is that 'f' supposed to be right before the quotes? if thats in ur code that'd probably throw an error unless it has a use im not aware of or its not relevant to the problem.
add a comment |
2 Answers
2
active
oldest
votes
2 Answers
2
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
1
down vote
accepted
You have to commit your transaction by adding the line below after execute(sql)
conn.commit()
Ref: Using INSERT with a PostgreSQL Database using Python
This one totally worked. Thanks!
– PuffedRiceCrackers
Nov 12 at 3:48
add a comment |
up vote
1
down vote
accepted
You have to commit your transaction by adding the line below after execute(sql)
conn.commit()
Ref: Using INSERT with a PostgreSQL Database using Python
This one totally worked. Thanks!
– PuffedRiceCrackers
Nov 12 at 3:48
add a comment |
up vote
1
down vote
accepted
up vote
1
down vote
accepted
You have to commit your transaction by adding the line below after execute(sql)
conn.commit()
Ref: Using INSERT with a PostgreSQL Database using Python
You have to commit your transaction by adding the line below after execute(sql)
conn.commit()
Ref: Using INSERT with a PostgreSQL Database using Python
answered Nov 11 at 16:31
Eray Balkanli
3,85741943
3,85741943
This one totally worked. Thanks!
– PuffedRiceCrackers
Nov 12 at 3:48
add a comment |
This one totally worked. Thanks!
– PuffedRiceCrackers
Nov 12 at 3:48
This one totally worked. Thanks!
– PuffedRiceCrackers
Nov 12 at 3:48
This one totally worked. Thanks!
– PuffedRiceCrackers
Nov 12 at 3:48
add a comment |
up vote
2
down vote
first look at your table setup and make sure your variables are named right in the right order, format and all that, if your not logging into the specific database on the sql server it won't know where the table is, you might need to send something like 'USE databasename' before you do your insert statement so your computer is in the right place in the server.
I might not be up to date with the language but is that 'f' supposed to be right before the quotes? if thats in ur code that'd probably throw an error unless it has a use im not aware of or its not relevant to the problem.
add a comment |
up vote
2
down vote
first look at your table setup and make sure your variables are named right in the right order, format and all that, if your not logging into the specific database on the sql server it won't know where the table is, you might need to send something like 'USE databasename' before you do your insert statement so your computer is in the right place in the server.
I might not be up to date with the language but is that 'f' supposed to be right before the quotes? if thats in ur code that'd probably throw an error unless it has a use im not aware of or its not relevant to the problem.
add a comment |
up vote
2
down vote
up vote
2
down vote
first look at your table setup and make sure your variables are named right in the right order, format and all that, if your not logging into the specific database on the sql server it won't know where the table is, you might need to send something like 'USE databasename' before you do your insert statement so your computer is in the right place in the server.
I might not be up to date with the language but is that 'f' supposed to be right before the quotes? if thats in ur code that'd probably throw an error unless it has a use im not aware of or its not relevant to the problem.
first look at your table setup and make sure your variables are named right in the right order, format and all that, if your not logging into the specific database on the sql server it won't know where the table is, you might need to send something like 'USE databasename' before you do your insert statement so your computer is in the right place in the server.
I might not be up to date with the language but is that 'f' supposed to be right before the quotes? if thats in ur code that'd probably throw an error unless it has a use im not aware of or its not relevant to the problem.
answered Nov 11 at 16:21
Troy
211
211
add a comment |
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53250620%2fsql-insert-in-python-postgres-cursor-execute%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Could u please try: sql = f"INSERT INTO jna ("sid", "phone", "email") VALUES ('123','123','123')
– Eray Balkanli
Nov 11 at 16:14
@ErayBalkanli Thanks for the comment, but that didn't work either..
– PuffedRiceCrackers
Nov 11 at 16:19
1
ok. Can you please try adding conn.commit() after the execute(sql) line?
– Eray Balkanli
Nov 11 at 16:21