Python 我从psycopg2得到一个语法错误。如果我使用sqlite3,它就会工作
我得到这个错误:Python 我从psycopg2得到一个语法错误。如果我使用sqlite3,它就会工作,python,postgresql,Python,Postgresql,我得到这个错误: Traceback (most recent call last): File "E:\Sublime Text 3\project\webscrabe\temp.py", line 30, in <module> insert('hello', 20, 'poepen') File "E:\Sublime Text 3\project\webscrabe\temp.py", line 28, in insert c.execute("INS
Traceback (most recent call last):
File "E:\Sublime Text 3\project\webscrabe\temp.py", line 30, in <module>
insert('hello', 20, 'poepen')
File "E:\Sublime Text 3\project\webscrabe\temp.py", line 28, in insert
c.execute("INSERT INTO Gpus(Name, Price, Deliverytime) VALUES(?, ?, ?)",(x, y, z))
psycopg2.errors.SyntaxError: syntax error at or near ","
LINE 1: INSERT INTO Gpus(Name, Price, Deliverytime) VALUES(?, ?, ?)
^
[Finished in 1.3s with exit code 1]
[shell_cmd: python -u "E:\Sublime Text 3\project\webscrabe\temp.py"]
[dir: E:\Sublime Text 3\project\webscrabe]
[path: C:\Program Files (x86)\Common Files\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\System32\OpenSSH\;C:\Program Files\Microsoft SQL Server\130\Tools\Binn\;C:\Users\David\Appdata\Local\Programs\Python\Python37\Scripts;C:\Program Files\dotnet\;C:\Program Files\Microsoft SQL Server\Client SDK\ODBC\170\Tools\Binn\;E:\Python\Scripts\;E:\Python\;C:\Users\David\AppData\Local\Microsoft\WindowsApps;E:\Pycharm\PyCharm Community Edition 2020.1.1\bin;C:\Users\David\Appdata\Local\Programs\Python\Python38-32;C:\Users\David\Appdata\Local\Programs\Python\Python38-32\Scripts\;C:\Users\David\AppData\Local\GitHubDesktop\bin]
我正在使用postgreSQL和pgadmin 4。
如果我使用sqlite3,它可以正常工作。如何修复此错误?
这是我第一次问问题,很抱歉,如果我格式化了不正确的内容psycopg2正在使用
%s
作为占位符。
import psycopg2
# import sqlite3
# conn = sqlite3.connect('test.db')
DB_NAME = "xcsvohqb"
DB_USER = "xcsvohqb"
DB_PASS = ""
DB_HOST = "ruby.db.elephantsql.com"
DB_PORT = "5432"
conn = psycopg2.connect(database=DB_NAME, user=DB_USER, password=DB_PASS,host=DB_HOST,port=DB_PORT)
c = conn.cursor()
#c.execute("""
#CREATE TABLE Gpus
#(
#Name TEXT PRIMARY KEY NOT NULL ,
#Price INT NOT NULL,
#Deliverytime TEXT NOT NULL
#)
# """)
#conn.commit()
def insert(name, price, deliverytime):
c.execute("INSERT INTO Gpus(Name, Price, Deliverytime) VALUES(?, ?, ?)",(x, y, z))
conn.commit()
insert('test', 20, 'test')
def get_posts():
c.execute("SELECT * FROM Gpus")
print(c.fetchall())
get_posts()
```