【发布时间】:2018-07-14 21:21:55
【问题描述】:
我是一个新的 Python 学习者。我创建了一个程序,并与 sqlite db 连接。但是当我运行程序时显示预期的缩进块错误。我如何找出错误以及如何修复它?请寻求您的帮助...我的代码示例如下。
def Book():
try:
c.execute("INSERT INTO {tn} ({vn}, {vm}, {vma}, {vnos}) VALUES (VehicleNo.get(), VehicleModel.get(), VehicleMake.get(), NoofSeat.get())".\
format(tn="Vehicle", vn="vnumver", vm="vmodel", vma="vmade", vnos="vnumofseat"))
except sqlite3.IntegrityError:
print('ERROR: ID already exists in PRIMARY KEY column {}')
c.execute("INSERT OR IGNORE INTO {tn} ({vn}, {vm}, {vma}, {vnos})) VALUES (VehicleNo.get(), VehicleModel.get(), VehicleMake.get(), NoofSeat.get())".\
format(tn="Vehicle", vn="vnumver", vm="vmodel", vma="vmade", vnos="vnumofseat"))
#Driver
try:
c.execute("INSERT INTO {tn} ({dn}, {dl}, {dp}) VALUES (DriverName.get(), LicenseNo.get(), Phone.get())".\
format(tn="Driver", dn="dname", dl="dlicence", dp="dphone"))
except sqlite3.IntegrityError:
print('ERROR: ID already exists in PRIMARY KEY column {}')
c.execute("INSERT OR IGNORE INTO {tn} ({dn}, {dl}, {dp})) VALUES (DriverName.get(), LicenseNo.get(), Phone.get())".\
format(tn="Driver", dn="dname", dl="dlicence", dp="dphone"))
#Customer
try:
c.execute("INSERT INTO {tn} ({cname}, {cadd}, {cphone}, {cfrom}, {cto}, {chire}, {cdate}, {crate}, {ctotalm}, {ctotalcost}) VALUES (DriverName.get(), LicenseNo.get(), Phone.get())".\
format(tn="Customer", cname="cname", cadd="caddress", cphone="cphone", cfrom="cfrom", cto="cto", chire="chire", cdate="cdate", crate="crate", ctotalm="ctotalm", ctotalcost="ctotalcost"))
except sqlite3.IntegrityError:
print('ERROR: ID already exists in PRIMARY KEY column {}')
c.execute("INSERT OR IGNORE INTO {tn} ({cname}, {cadd}, {cphone}, {cfrom}, {cto}, {chire}, {cdate}, {crate}, {ctotalm}, {ctotalcost})) VALUES (CustomerName.get(), Address.get(), Phone.get(), )".\
format(tn="Customer", cname="cname", cadd="caddress", cphone="cphone", cfrom="cfrom", cto="cto", chire="chire", cdate="cdate", crate="crate", ctotalm="ctotalm", ctotalcost="ctotalcost"))
【问题讨论】:
-
基本规则:如果一行以
:结束,则下一行必须缩进更多。最佳做法是多 4 个空格。
标签: python sqlite error-handling