Python - SQL - Databases: Getting Organized - for loop, insert
Head First Python: A Learner’s Guide to the Fundamentals of Python Programming, A Brain-Friendly Guide、 Paul Barry(著)、 O’Reilly Mediaの Chapter 12.(Databases: Getting Organized)、EXERCISE(554/682)の解答を求めてみる。
Jupyter(コード、入出力結果)
webapp/PopulateTables.ipynb
with DBcm.UseDatabase(db_details) as db:
for file in files:
name, age, *_ = file.removesuffix('.txt').split('-')
db.execute(SQL_INSERT, (name, age,))
SQL = '''
select * from swimmers
'''
with DBcm.UseDatabase(db_details) as db:
db.execute(SQL)
results = db.fetchall()
results
[(66, 'Hannah', 13),
(67, 'Darius', 13),
(68, 'Owen', 15),
(69, 'Mike', 15),
(70, 'Hannah', 13),
(71, 'Mike', 15),
(72, 'Mike', 15),
(73, 'Abi', 10),
(74, 'Ruth', 13),
(75, 'Tasmin', 15),
(76, 'Erika', 15),
(77, 'Ruth', 13),
(78, 'Abi', 10),
(79, 'Maria', 9),
(80, 'Elba', 14),
(81, 'Tasmin', 15),
(82, 'Abi', 10),
(83, 'Abi', 10),
(84, 'Mike', 15),
(85, 'Ali', 12),
(86, 'Ruth', 13),
(87, 'Chris', 17),
(88, 'Ali', 12),
(89, 'Darius', 13),
(90, 'Ruth', 13),
(91, 'Aurora', 13),
(92, 'Katie', 9),
(93, 'Alison', 14),
(94, 'Ruth', 13),
(95, 'Emma', 13),
(96, 'Calvin', 9),
(97, 'Darius', 13),
(98, 'Mike', 15),
(99, 'Emma', 13),
(100, 'Tasmin', 15),
(101, 'Blake', 15),
(102, 'Abi', 10),
(103, 'Chris', 17),
(104, 'Blake', 15),
(105, 'Bill', 18),
(106, 'Darius', 13),
(107, 'Dave', 17),
(108, 'Alison', 14),
(109, 'Lizzie', 14),
(110, 'Katie', 9),
(111, 'Katie', 9),
(112, 'Katie', 9),
(113, 'Lizzie', 14),
(114, 'Tasmin', 15),
(115, 'Katie', 9),
(116, 'Dave', 17),
(117, 'Erika', 15),
(118, 'Calvin', 9),
(119, 'Calvin', 9),
(120, 'Carl', 15),
(121, 'Bill', 18),
(122, 'Katie', 9),
(123, 'Blake', 15),
(124, 'Erika', 15),
(125, 'Katie', 9)]