計算機科学のブログ

SQL - Python - SELECT文 - 天賦のデータ検索 - 特殊文字、シングルクォート、エスケープ

Head First SQL ―頭とからだで覚えるSQLの基本Lynn Beighley(著)、 佐藤 直生(監訳)、 松永 多苗子(翻訳)、 オライリージャパンの 2章(SELECT文 - 天賦のデータ検索)、p.69(エクササイズ)の解答を求めてみる。

schema3.sql

insert into my_contacts
values
('スティーブ','ファンヤヨ',
'steve@onionflavoredrings.com',
'M','1970-04-01',
'パンクミュージシャン',
'ニュージャージー州グローバーズミル(Grover''s Mill)',
'独身',
'国家の破壊',
'同国人、ギタープレイヤー'
);

コード

sample3.py

#! /usr/bin/env python3
import sqlite3

con = sqlite3.connect('sample3.db')
cur = con.cursor()

_sql = '''
select * from my_contacts where location = 'ニュージャージー州グローバーズミル(Grover''s Mill)'
'''
cur.execute(_sql)
for row in cur.fetchall():
    print(row)
cur.close()
con.close()

入出力結果(Terminal, Zsh)

% ./sample3.py
('スティーブ', 'ファンヤヨ', 'steve@onionflavoredrings.com', 'M', '1970-04-01', 'パンクミュージシャン', "ニュージャージー州グローバーズミル(Grover's Mill)", '独身', '国家の破壊', '同国人、ギタープレイヤー')
%