SQL - SQLite - DELEtE文とUPDATE文 - 役に立つ変更 - delete文
Head First SQL ―頭とからだで覚えるSQLの基本、 Lynn Beighley(著)、 佐藤 直生(監訳)、 松永 多苗子(翻訳)、 オライリージャパンの 3章(DELEtE文とUPDATE文 - 役に立つ変更)、p.122(自分で考えてみよう)の解答を求めてみる。
zippo.sql
insert into clown_info values
('ジッポ','オークランド病院','女性、オレンジ色のスーツ、バギーパンツ','ダンス、歌'),
('ジッポ','トレイシーズ','女性、オレンジ色のスーツ、バギーパンツ','ダンス、歌'),
('ジッポ','ボールマート','女性、オレンジ色のスーツ、バギーパンツ','ダンス、歌'),
('ジッポ','ミルストーンモール','女性、オレンジ色のスーツ、バギーパンツ','ダンス、歌'),
('ジッポ','オークランド病院','女性、オレンジ色のスーツ、バギーパンツ','ダンス、歌');
コード
sample2.py
#! /usr/bin/env python3
import sqlite3
con = sqlite3.connect('clown.db')
cur = con.cursor()
sql_zippo = """select * from clown_info where name = 'ジッポ'"""
cur.execute(sql_zippo)
for row in cur.fetchall():
print(row)
print('追加')
with open('zippo.sql') as f:
cur.executescript(f.read())
cur.execute(sql_zippo)
for row in cur.fetchall():
print(row)
print('削除')
sql = """
delete from clown_info
where name = 'ジッポ'
and activities = 'ダンス'
"""
cur.execute(sql)
con.commit()
cur.execute(sql_zippo)
for row in cur.fetchall():
print(row)
cur.close()
con.close()
入出力結果(Terminal, Zsh)
% ./sample2.py
('ジッポ', 'ミルストーンモール', '女性、オレンジ色のスーツ、バギーパンツ', 'ダンス')
('ジッポ', 'ミルストーンモール', '女性、オレンジ色のスーツ、バギーパンツ', 'ダンス、歌')
追加
('ジッポ', 'ミルストーンモール', '女性、オレンジ色のスーツ、バギーパンツ', 'ダンス')
('ジッポ', 'ミルストーンモール', '女性、オレンジ色のスーツ、バギーパンツ', 'ダンス、歌')
('ジッポ', 'オークランド病院', '女性、オレンジ色のスーツ、バギーパンツ', 'ダンス、歌')
('ジッポ', 'トレイシーズ', '女性、オレンジ色のスーツ、バギーパンツ', 'ダンス、歌')
('ジッポ', 'ボールマート', '女性、オレンジ色のスーツ、バギーパンツ', 'ダンス、歌')
('ジッポ', 'ミルストーンモール', '女性、オレンジ色のスーツ、バギーパンツ', 'ダンス、歌')
('ジッポ', 'オークランド病院', '女性、オレンジ色のスーツ、バギーパンツ', 'ダンス、歌')
削除
('ジッポ', 'ミルストーンモール', '女性、オレンジ色のスーツ、バギーパンツ', 'ダンス、歌')
('ジッポ', 'オークランド病院', '女性、オレンジ色のスーツ、バギーパンツ', 'ダンス、歌')
('ジッポ', 'トレイシーズ', '女性、オレンジ色のスーツ、バギーパンツ', 'ダンス、歌')
('ジッポ', 'ボールマート', '女性、オレンジ色のスーツ、バギーパンツ', 'ダンス、歌')
('ジッポ', 'ミルストーンモール', '女性、オレンジ色のスーツ、バギーパンツ', 'ダンス、歌')
('ジッポ', 'オークランド病院', '女性、オレンジ色のスーツ、バギーパンツ', 'ダンス、歌')
%