Database SQLite3+;Python3-使用外键创建数据库
大家好 我在使用sqlite3和python3时遇到了一些问题。我想我又有了这样一个愚蠢的时刻,但我正试图从本质上努力让下表 症结似乎在于外键——我做错了什么,但我还没有弄清楚是什么——我的谷歌搜索并没有真正让我有所收获。我找不到任何好的文件。我在网上尝试了多种不同的外键语法,但没有一种能让我更接近工作表Database SQLite3+;Python3-使用外键创建数据库,database,sqlite,python-3.x,foreign-keys,Database,Sqlite,Python 3.x,Foreign Keys,大家好 我在使用sqlite3和python3时遇到了一些问题。我想我又有了这样一个愚蠢的时刻,但我正试图从本质上努力让下表 症结似乎在于外键——我做错了什么,但我还没有弄清楚是什么——我的谷歌搜索并没有真正让我有所收获。我找不到任何好的文件。我在网上尝试了多种不同的外键语法,但没有一种能让我更接近工作表 c.execute(''' CREATE TABLE Driver ( ID INTEGER PRIMARY KEY NOT NULL UNIQUE A
c.execute('''
CREATE TABLE Driver (
ID INTEGER PRIMARY KEY NOT NULL UNIQUE AUTOINCREMENT,
FirstName text,
LastName text,
RegistrationNo text)
''')
c.execute('''
CREATE TABLE Passenger (
ID INTEGER PRIMARY KEY NOT NULL UNIQUE AUTOINCREMENT,
FirstName text,
LastName text)
''')
c.execute('''
pragma foreign_keys=on;
begin transaction;
CREATE TABLE Journey (
ID INTEGER PRIMARY KEY NOT NULL UNIQUE AUTOINCREMENT,
Driver_ID INTEGER NOT NULL
FOREIGN KEY (Driver_ID) REFERENCES Driver,
Origin text,
Destination text,
SeatsAvailable integer,
Date text,
Time text,
DriverNotes text,
PassengerNotes text)
''')
c.execute('''
pragma foreign_keys=on;
begin transaction;
CREATE TABLE Assigned Passengers (
ID INTEGER PRIMARY KEY NOT NULL UNIQUE AUTOINCREMENT,
Journey_ID INTEGER NOT NULL
FOREIGN KEY (Journey_ID) REFERENCES Journey,
Passenger_ID INTEGER NOT NULL
FOREIGN KEY (Passenger_ID) REFERENCES Passenger
''')
我收到的信息之一是-
Traceback (most recent call last):
File "/Users/Computer/Bitbucket/Python Project/sql.py", line 46, in <module>
''')
sqlite3.Warning: You can only execute one statement at a time.
回溯(最近一次呼叫最后一次):
文件“/Users/Computer/Bitbucket/Python Project/sql.py”,第46行,在
''')
警告:一次只能执行一条语句。
第46行位于旅程创建块的末尾
提前感谢任何能够提供帮助的人:)
PRAGMA外键
begintransaction
在这里毫无意义谢谢你所做的一切——你帮了我很大的忙!:)祝您有个美好的一天!
c.execute('''
CREATE TABLE Journey (
ID INTEGER PRIMARY KEY AUTOINCREMENT,
Driver_ID INTEGER NOT NULL REFERENCES Driver(ID),
Origin text,
Destination text,
SeatsAvailable integer,
Date text,
Time text,
DriverNotes text,
PassengerNotes text)
''')
c.execute('''
CREATE TABLE Assigned_Passengers (
ID INTEGER PRIMARY KEY AUTOINCREMENT,
Journey_ID INTEGER NOT NULL REFERENCES Journey(ID),
Passenger_ID INTEGER NOT NULL REFERENCES Passenger(ID))
''')