152
파이썬 비동기 라이브러리 Asyncio
logger = logging.getLogger('perf')
CREATE_TABLE = ('CREATE TABLE IF NOT EXISTS patron(' #③
'id serial PRIMARY KEY, name text, '
'fav_dish text)')
INSERT = ('INSERT INTO patron(name, fav_dish) '
'VALUES ($1, $2) RETURNING id')
SELECT = 'SELECT * FROM patron WHERE id = $1'
UPDATE = 'UPDATE patron SET name=$1, fav_dish=$2 WHERE id=$3'
DELETE = 'DELETE FROM patron WHERE id=$1'
EXISTS = "SELECT to_regclass('patron')"
CACHE = LRU(max_size=65536) #④
async def add_patron(conn, data: dict) -> int: #⑤
return await conn.fetchval(
INSERT, data['name'], data['fav_dish'])
async def update_patron(conn, id: int, data: dict) -> bool:
result = await conn.execute( #⑥
UPDATE, data['name'], data['fav_dish'], id)
return ...