Python-да дерекқорына сұраныстар жіберу
Дерекқорға қосылғаннан кейін оған
сұраныстар жіберуге болады. Бұл query
айнымалысы арқылы жасалады, онда
users кестесіндегі барлық деректерді
шығару үшін SQL сұранысы жазылады. Бұл
айнымалыны connection айнымалысы бар
блокта жазу керек:
try:
with connect(
host='localhost',
user='root',
password='',
database='test',
) as connection:
query = "SELECT * FROM users"
except Error as e:
print(e)
Әрі қарай with конструкциясын жазамыз
connection айнымалысында сақталатын
MySQLConnection-объектісімен жұмыс істеу үшін.
Бұл объектіге арнайы әдістерді ретімен
қолдану керек. Олардың біріншісі -
cursor әдісі, ол MySQLConnection-объектісінен
CMySQLCursor-объектісін жасайды. Өз кезегінде оған
execute әдісі қолданылады, ол
өзіне параметр ретінде берілген SQL сұранысын
орындауды қамтамасыз етеді:
try:
with connect(
...
) as connection:
query = "SELECT * FROM users"
with connection.cursor() as cursor:
cursor.execute(query)
Әрі қарай fetchall әдісі арқылы барлық деректерді
алу керек және оларды result
айнымалысына жазу керек. Алынған деректерді
шығару үшін оларды for
циклы арқылы өткізу керек:
try:
with connect(
...
) as connection:
query = "SELECT * FROM users"
with connection.cursor() as cursor:
cursor.execute(query)
result = cursor.fetchall()
for row in result:
print(row)
Толық код келесідей болады:
try:
with connect(
host='localhost',
user='root',
password='',
database='test',
) as connection:
query = "SELECT * FROM users"
with connection.cursor() as cursor:
print(cursor)
cursor.execute(query)
result = cursor.fetchall()
for row in result:
print(row)
except Error as e:
print(e)
Кодты орындағаннан кейін консольге барлық жазбалар кортеждер түрінде шығады:
(1, 'user1', 23, 400)
(2, 'user2', 25, 500)
(3, 'user3', 23, 500)
(4, 'user4', 30, 900)
(5, 'user5', 27, 500)
(6, 'user6', 28, 900)
users кестесіндегі барлық деректерді шығарыңыз.