列未知火鸟 Python
Column Unknown Firebird Python
我正在尝试使用 python 和 tkinter 为 firebird 数据库制作一个 GUI。当我尝试将框的输入写入数据库时,出现错误
fdb.fbcore.DatabaseError: ('Error while preparing SQL statement:\n- SQLCODE: -206\n- Dynamic SQL Error\n- SQL error code = -206\n- Column unknown\n- NUMBER\n- At line 1, column 99', -206, 335544569)
这是提交操作的代码:
simnumbber = "SIM NUMBER"
def submit():
# Database connection in the function
conn = fdb.connect(
host='localhost', database='C:/SIMCARDS.fdb', user='user', password='password')
# Cursor
cur = conn.cursor()
# Insert Into table
cur.execute("""INSERT INTO table ("NUMBER", simnumbber, "OPERATOR", "TYPE", "TARIFF", "DATA", "STATUS") VALUES (:number, :simnumber, :operator, :type, :tariff, :data, :status);""",
{
'number': simnumber.get(),
'simnumber': cardnumber.get(),
'operator': operator.get(),
'type': type.get(),
'tariff': tariff.get(),
'data': data.get(),
'status': status.get()
})
# Commit Cahanges
conn.commit()
# Close connection
conn.close()
# Clear Textboxes
simnumber.delete(0, END)
cardnumber.delete(0, END)
operator.delete(0, END)
type.delete(0, END)
tariff.delete(0, END)
data.delete(0, END)
status.delete(0, END)
留在这里给任何必须做这样的事情的人。问题出在我在 VALUES 子句的 SQL 查询中提供的参数上。 Firebird 不知道“:number”是什么。所以固定查询是这样的:
cur.execute("""INSERT INTO cards (number,"SIM NUMBER",OPERATOR,TYPE,TARIFF,DATA,STATUS) VALUES (?,?,?,?,?,?,?);""", (simnumber.get(),cardnumber.get(),operator.get(), type.get(), tariff.get(), data.get(), status.get()))
我正在尝试使用 python 和 tkinter 为 firebird 数据库制作一个 GUI。当我尝试将框的输入写入数据库时,出现错误
fdb.fbcore.DatabaseError: ('Error while preparing SQL statement:\n- SQLCODE: -206\n- Dynamic SQL Error\n- SQL error code = -206\n- Column unknown\n- NUMBER\n- At line 1, column 99', -206, 335544569)
这是提交操作的代码:
simnumbber = "SIM NUMBER"
def submit():
# Database connection in the function
conn = fdb.connect(
host='localhost', database='C:/SIMCARDS.fdb', user='user', password='password')
# Cursor
cur = conn.cursor()
# Insert Into table
cur.execute("""INSERT INTO table ("NUMBER", simnumbber, "OPERATOR", "TYPE", "TARIFF", "DATA", "STATUS") VALUES (:number, :simnumber, :operator, :type, :tariff, :data, :status);""",
{
'number': simnumber.get(),
'simnumber': cardnumber.get(),
'operator': operator.get(),
'type': type.get(),
'tariff': tariff.get(),
'data': data.get(),
'status': status.get()
})
# Commit Cahanges
conn.commit()
# Close connection
conn.close()
# Clear Textboxes
simnumber.delete(0, END)
cardnumber.delete(0, END)
operator.delete(0, END)
type.delete(0, END)
tariff.delete(0, END)
data.delete(0, END)
status.delete(0, END)
留在这里给任何必须做这样的事情的人。问题出在我在 VALUES 子句的 SQL 查询中提供的参数上。 Firebird 不知道“:number”是什么。所以固定查询是这样的:
cur.execute("""INSERT INTO cards (number,"SIM NUMBER",OPERATOR,TYPE,TARIFF,DATA,STATUS) VALUES (?,?,?,?,?,?,?);""", (simnumber.get(),cardnumber.get(),operator.get(), type.get(), tariff.get(), data.get(), status.get()))