์ฝ”๋“œ - ํŒจ์บ  ์ˆ˜์—… ์ฝ”๋“œ ์ฐธ๊ณ  (ํŒจ์บ  ์ˆ˜์—… ์ •๋ฆฌ)

 

 

<์ด์ „ ๊ธ€>

https://silvercoding.tistory.com/46

 

[python ๊ธฐ์ดˆ] 14. SQLITE ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์—ฐ๋™ (2) - ํ…Œ์ด๋ธ” ์กฐํšŒ

์ฝ”๋“œ - ํŒจ์บ  ์ˆ˜์—… ์ฝ”๋“œ ์ฐธ๊ณ  (ํŒจ์บ  ์ˆ˜์—… ์ •๋ฆฌ) <์ด์ „ ๊ธ€> https://silvercoding.tistory.com/45 https://silvercoding.tistory.com/44 https://silvercoding.tistory.com/43 https://silvercoding.tistory.com/42..

silvercoding.tistory.com

 

- sqlite3 import 

import sqlite3

 

 

- DB ์—ฐ๊ฒฐ (์ƒ์„ฑ) / (ํŒŒ์ผ) 

conn = sqlite3.connect('./resource/database.db')

 

 

- Cursor ์—ฐ๊ฒฐ 

c = conn.cursor()

 

 

- ์ปค๋ฐ‹

conn.commit()

์ด๋ฒˆ์—” ์˜คํ† ์ปค๋ฐ‹ ์„ค์ •์„ ํ•˜์ง€ ์•Š์„ ๊ฒƒ์ด๋ฏ€๋กœ ์ฝ”๋“œ์— ๊ฐ€์žฅ ๋งˆ์ง€๋ง‰์—๋Š” ์ปค๋ฐ‹์„ ์„ ์–ธํ•ด ๋†“์•„์•ผ ํ•œ๋‹ค. ์ด ์œ„์— ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜์ž. 

 

 

- ๋ฐ์ดํ„ฐ ์ˆ˜์ • 

(1) ๋ฐฉ๋ฒ• 1 : ํŠœํ”Œ 

c.execute("UPDATE users SET username = ? WHERE id = ?", ('niceman', 2))

id = 2 ์ธ username์„ niceman์œผ๋กœ ๋ฐ”๊พธ๋ผ๋Š” ๋œป์˜ ์ฝ”๋“œ์ด๋‹ค.

 

 

(2) ๋ฐฉ๋ฒ• 2 : ๋”•์…”๋„ˆ๋ฆฌ 

c.execute("UPDATE users SET username = :name WHERE id = :id", {'name': 'goodgirl', 'id': 5})

๋”•์…”๋„ˆ๋ฆฌ๋กœ key๋ฅผ ์—ฐ๊ฒฐํ•˜์—ฌ ์ˆ˜์ •ํ•  ์ˆ˜๋„ ์žˆ๋‹ค. 

 

 

(3) ๋ฐฉ๋ฒ• 3 : format

c.execute("UPDATE users SET username = '%s' WHERE id ='%s'" % ('badboy', 3))

% ๋ฅผ ์ด์šฉํ•˜์—ฌ ์—ฐ๊ฒฐํ•ด ์ค„ ์ˆ˜๋„ ์žˆ๋‹ค. 

 

 

* ์ค‘๊ฐ„ ๋ฐ์ดํ„ฐ ํ™•์ธ 1

for user in c.execute("SELECT * FROM users"):
    print(user)

 (1, 'Kim', 'silver@naver.com', '010-0000-0000', 'kim.com', '2021-08-03 13:28:23') 
 (2, 'niceman', 'Park@daum.net', '010-1111-1111', 'Park.com', '2021-08-03 13:28:23') 
 (3, 'badboy', 'Lee@naver.com', '010-2222-2222', 'Lee.com', '2021-08-03 13:28:23') 
 (4, 'Cho', 'Cho@daum.net', '010-3333-3333', 'Cho.com', '2021-08-03 13:28:23') 
 (5, 'goodgirl', 'Yoo@google.com', '010-4444-4444', 'Yoo.net', '2021-08-03 13:28:23') 

์ด๋ ‡๊ฒŒ ๋ฐ์ดํ„ฐ ์ˆœํšŒ๋ฅผ ํ†ตํ•ด ๋ฐ”๋€ ๊ฒƒ์„ ํ™•์ธ ํ•  ์ˆ˜ ์žˆ๋‹ค. 

 

 

 

- ๋ฐ์ดํ„ฐ ์‚ญ์ œ 

(1) Row Delete 

# ๋ฐฉ๋ฒ• 1
c.execute("DELETE FROM users WHERE id = ?", (2,))

# ๋ฐฉ๋ฒ• 2 
c.execute("DELETE FROM users WHERE id = :id", {'id' : 5})

# ๋ฐฉ๋ฒ• 3 
c.execute("DELETE FROM users WHERE id = '%s'" % 4)

์‚ญ์ œ๋„ ๊ฐ™์€ 3๊ฐ€์ง€์˜ ๋ฐฉ๋ฒ•์œผ๋กœ ์›ํ•˜๋Š” ํ–‰์„ ์„ ํƒํ•˜์—ฌ ์‚ญ์ œํ•  ์ˆ˜ ์žˆ๋‹ค. 

 

 

* ์ค‘๊ฐ„ ๋ฐ์ดํ„ฐ ํ™•์ธ 2 

for user in c.execute("SELECT * FROM users"):
    print(user)

 (1, 'Kim', 'silver@naver.com', '010-0000-0000', 'kim.com', '2021-08-03 13:28:23')    
 (3, 'badboy', 'Lee@naver.com', '010-2222-2222', 'Lee.com', '2021-08-03 13:28:23')   

 

 

(2) ํ…Œ์ด๋ธ” ์ „์ฒด ๋ฐ์ดํ„ฐ ์‚ญ์ œ 

print("users db deleted : ", conn.execute('DELETE FROM users').rowcount, " rows")

 users db deleted :  2  rows 

๋ชจ๋‘ ์‚ญ์ œ๋˜์—ˆ๋‹ค!

 

 

- ์ปค๋ฐ‹ & ์ ‘์† ํ•ด์ œ 

# ์ปค๋ฐ‹
conn.commit()

# ์ ‘์† ํ•ด์ œ 
conn.close()

์ปค๋ฐ‹์€ ๊ณ„์† ์„ ์–ธ์ด ๋˜์–ด ์žˆ์–ด์•ผ ํ•˜๊ณ , with๋ฌธ์„ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š”๋‹ค๋ฉด ์ ‘์†ํ•ด์ œ๋ฅผ ๊ผญ ํ•ด์ฃผ์–ด์•ผ ํ•œ๋‹ค. 

 

 

 

+ Recent posts