[GPA Check] Python, MySQL ์—ฐ๋™

Updated:

Python Mysql

์กธ์—… ์กฐ๊ฑด ์ถฉ์กฑ ์—ฌ๋ถ€๋ฅผ ๊ฒ€์‚ฌํ•˜๋ ค๋ฉด ์šฐ์„  ๋‚˜์˜ ํ•™์  ์ •๋ณด๋ฅผ ์•Œ์•„์•ผ ํ•œ๋‹ค.

๊ทธ๋Ÿฌ๊ธฐ ์œ„ํ•ด์„  ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์ €์žฅ ๋˜์–ด ์žˆ๋Š” ์ •๋ณด๋ฅผ ๊ฐ€์ ธ์™€์•ผํ•œ๋‹ค.

ํ•™๊ธฐ ์ค‘์— ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ณผ๋ชฉ์„ ์ˆ˜๊ฐ•ํ•˜๋ฉด์„œ ์ž๋ฐ”์™€ ์—ฐ๋™์„ ํ•ด๋ณธ์ ์ด ์žˆ๋Š”๋ฐ

๊ทธ์— ๋น„ํ•ด์„œ ์ •๋ง ์ •๋ง ๊ฐ„๋‹จํ•˜๊ณ  ์‰ฌ์›Œ์„œ ๋†€๋ž๋‹ค !

์šฐ์„  ํŒŒ์ด์ฐธ์—์„œ mysql-connector-python ๋ชจ๋“ˆ์„ ๋‹ค์šด ๋ฐ›์ž.

import mysql.connector


my_db = mysql.connector.connect(
  host="localhost",
  user="my_name",
  password="my_password"
)

import ๋ฅผ ํ•ด์ค€ ๋’ค host, user, password ๋งŒ ์ž…๋ ฅํ•ด์ฃผ๋ฉด ์—ฐ๊ฒฐ์€ ๋์ด๋‹ค!

๊ทธ ๋‹ค์Œ ๋ถ€ํ„ฐ ์›๋ฆฌ๋Š” ์•„์ฃผ์•„์ฃผ ๊ฐ„๋‹จํ•˜๋‹ค.

my_db ์— cursor ๋ฅผ ์—ฐ๊ฒฐํ•ด ๋˜‘๊ฐ™์ด ๋™์ž‘ ์‹œ์ผœ์ฃผ๋ฉด ๋œ๋‹ค.

my_cur = my_db.cursor()
my_cur.execute('USE Kibok_Class')
my_cur.execute('SELECT * FROM 3_1')
my_result = my_cur.fetchall()

for cur in my_result:
    print(cur)

fecthall, fecthone ํ•จ์ˆ˜๊ฐ€ ์žˆ๋Š”๋ฐ fetchall ์€ ํ•ด๋‹น ํ…Œ์ด๋ธ”์˜ ๋ชจ๋“  tuple ์„ ๊ฐ€์ ธ์˜ค๊ณ 

fectchone ์€ ๋งจ ์ฒ˜์Œ tuple ์˜ ๊ฐ’์„ ๊ฐ€์ ธ์˜จ๋‹ค.

์œ„ ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•ด๋ณด๋ฉด?

๋‚ด๊ฐ€ 3-1 ํ•™๊ธฐ์— ๋“ค์—ˆ๋˜ ๊ณผ๋ชฉ์ด ์ฃผ๋ฃจ๋ฃฉ ๋‚˜์˜ค๊ฒŒ ๋œ๋‹ค.

์ด ๊ธฐ๋Šฅ์„ GPA ํ”„๋กœ๊ทธ๋žจ์— ์˜ฎ๊ฒจ๋ณด์ž !

def find_3_1(self):
	print('3-1 ํ•™๊ธฐ ํ•™์  ์กฐํšŒ ํ•จ์ˆ˜ ์‹คํ–‰')
	widget = QPlainTextEdit(self)
	widget.setReadOnly(True)
	
  my_cur.execute('SELECT * FROM 3_1')
	my_result = my_cur.fetchall()
	
  widget.appendPlainText('3-1 ํ•™๊ธฐ ํ•™์  ์กฐํšŒ ํ•จ์ˆ˜ ์‹คํ–‰\n')
	for cur in my_result:
		widget.appendPlainText(str(cur[2]))
	
  widget.setGeometry(25, 40, 950, 435)
	widget.show()

[GPA Check] ์ž„์‹œ ๋ฉ”์ธํ™”๋ฉด, ํ•จ์ˆ˜ ์ œ์ž‘ ์˜ ํ•จ์ˆ˜์—์„œ 6, 7, 10, 11 ๋ฒˆ์งธ ์ฝ”๋“œ๋ฅผ ์ถ”๊ฐ€ ํ•ด ์ฃผ์—ˆ๋‹ค.

์ด๋ ‡๊ฒŒ ํ•˜๊ณ  ์‹คํ–‰์„ ํ•˜๋ฉด?

๋‚ด๊ฐ€ ์ˆ˜๊ฐ•ํ–ˆ๋˜ ๊ณผ๋ชฉ์ด ์ฃผ๋ฃจ๋ฃฉ ๋‚˜์˜จ๋‹ค.

์•ž์„œ ์ฝ˜์†”์ฐฝ์— ์ถœ๋ ฅ ํ•œ ๊ฒฐ๊ณผ๋Š” ๋ชจ๋“  ์†์„ฑ ๊ฐ’์„ ์ถœ๋ ฅ ํ–ˆ์ง€๋งŒ

index ๋ฅผ ์ถ”๊ฐ€ํ•ด์„œ ์›ํ•˜๋Š” ๊ฐ’๋งŒ ์ถœ๋ ฅ์„ ํ–ˆ๋‹ค.

์ •๋ฆฌ

์˜ค๋Š˜์€ ๊ฐ„๋‹จํ•˜๊ฒŒ Python ๊ณผ MySQL ์—ฐ๋™ ํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด ์•Œ์•„๋ดค๋‹ค.

์ž๋ฐ”์—์„œ Insert ๋ฌธ์„ ์‹คํ–‰์‹œํ‚ค๋ ค๋ฉด ์ž๋ฃŒํ˜•์„ ์ „๋ถ€ ๋งž์ถฐ์ค˜์•ผ ํ•ด์„œ ๊ท€์ฐฎ์•˜๋Š”๋ฐ

ํŒŒ์ด์ฌ์€ ๊ทธ๋Ÿฐ๊ฒŒ ์—†์–ด ์•„์ฃผ์•„์ฃผ ํŽธํ•˜๋‹ค.

์„ฑ์ ์ž…๋ ฅ๋„ ๊ตฌํ˜„์ด ์‰ฌ์šธ ๊ฒƒ ๊ฐ™์•„ ํ”„๋กœ๊ทธ๋žจ์œผ๋กœ ์„ฑ์ ์„ ์ž…๋ ฅํ•˜๋Š” ๊ธฐ๋Šฅ๋„ ๋งŒ๋“ค๋ ค๊ณ  ํ•œ๋‹ค.


Categories:

Updated:

Leave a comment