*Sqlite ์ฐ๋
ํ์ฌ ํ์ผ๊ฒฝ๋ก์ db.sqlite๋ฅผ ์์ฑํฉ๋๋ค. isolation_level = None์ผ๋ก ํ๊ฒ๋๋ฉด, ์ปค๋ฐ(commit)์ด ์๋ํ๋ฉ๋๋ค.
์ปค๋ฐ์ ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๊ด๋ จ๋ ๋ช
๋ น์ด๋ฅผ ์์๋์๋ค๊ฐ, ์คํ์ํค๋ ๋ช
๋ น์ ๋ปํฉ๋๋ค. (์ฆ, ์ปค๋ฐ์ ํ์ง ์๊ฒ๋๋ฉด ์ง์ ์ ์ผ๋ก ๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ฐ์๋๋ ์ํฅ์ ์์ต๋๋ค.)
*๋ฐ์ดํฐ๋ฒ ์ด์ค์ ๋ฐ์ดํฐํ์
TEXT, NUMERIC , INTEGER, REAL , BLOB
blob์ ํ์ผ, integer์ ์ ์, numeric๊ณผ real์ ์ค์, text๋ ๋ฌธ์์ด์ ๋ปํฉ๋๋ค.
*ํ
์ด๋ธ ์์ฑ
5๊ฐ์ง ํญ๋ชฉ(column, ์ด)์ด ์๋, ํ
์ด๋ธ์ ์์ฑํด๋ณด๋ฉด ๋ค์์ฒ๋ผ ๊ฐ๋ฅํฉ๋๋ค.
์ด๋ id๋ primary key๋ก ์ค์ ํ๋๋ฐ, ์ฃผ๋ก ์๋ฒ์ ๋งค๊ธฐ๋ ์ฉ๋๋ก ์ฌ์ฉํฉ๋๋ค. ๊ณ ์ ๊ฐ์ด๊ธฐ์, ์ค๋ณต๋๋ id๋ฅผ ๊ฐ์ง์๋ ์์ต๋๋ค.
์์ฑ๋ ๋ชจ์ต์ ์ ๊ทธ๋ฆผ๊ณผ ๊ฐ์ต๋๋ค. usersํ
์ด๋ธ์ 5๊ฐ์ง Column์ด ์๊ฒผ์ต๋๋ค.
*๋ฐ์ดํฐ ์ฝ์
๋ฌธ์์ด ๊ฐ์๊ฒฝ์ฐ๋ ๋ฐ๋ก ์ฝ์
์ ํ๋ฉด ๋์ง๋ง, ๋ณ์์ ์ ์ฅ๋๊ฐ๋ค์ ?๋ฅผ ์ด์ฉํด ํฌ๋งทํ
ํ๋ฏ์ด ๋ฃ์ด์ค์ผ ํฉ๋๋ค.
*์ง์ ์ฝ์
1.c.execute("INSERT INTO ํ
์ด๋ธ๋ช
VALUES (์ฝ์
ํ ๋ฐ์ดํฐ, ๋ฐ์ดํฐ,๋ฐ์ดํฐ,?)", (?์๋ํ ๋ณ์))
2.c.execute("INSERT INTO ํ
์ด๋ธ๋ช
VALUES (?,?,?,?,?)", (?์๋ํ ๋ณ์))
*Many์ฝ์
์ฌ๋ฌ๊ฐ์ ํญ๋ชฉ์ ์ฝ์
ํ ๋๋ Many๋ฅผ ์ด์ฉํฉ๋๋ค.
์๋ฅผ๋ค์ด ์ด๋ฐ ๋ฆฌ์คํธ๊ฐ ์์ผ๋ฉด, ์์ ๋ฐฉ๋ฒ์ผ๋ก๋ 3๋ฒ์ ๋ช
๋ น์ด๋ฅผ ์
๋ ฅํด์ผํ์ง๋ง , many๋ฅผ ์ด์ฉํ๋ฉด ๋ฆฌ์คํธ ๋๋ ํํํํ๋ฅผ ํ๋ฒ์ ๋ฃ์ ์ ์์ต๋๋ค.
* rollback() commit() close()
rollback : ๋กค๋ฐฑ์ ์์๋จ๋ ๋ช
๋ น์ด๋ฅผ ๋๋๋ฆฌ๋ ๊ธฐ๋ฅ์
๋๋ค. Ctrl+Z์ ๊ฐ์ ๊ธฐ๋ฅ์
๋๋ค. ์ด ๊ธ ๋งจ ์์์ ์ธ๊ธํ ์คํ ์ปค๋ฐ(isolation_level = None)์ ์ง์์ผ ์ฌ์ฉ ๊ฐ๋ฅํฉ๋๋ค.
commit : ์์๋จ๋ ๋ช
๋ น๋ค์ ์คํํฉ๋๋ค. (๋ฐ์)
close() : ์ฌ์ฉํ๋ ๋ฐ์ดํฐ๋ฒ ์ด์ค์์ ์ฐ๋์ ๋์ต๋๋ค.