Быстрый в изучении - мощный в программировании
Скрипт ИНВЕСТОР на Python

Попробуйте себя в качестве инвестора имея в помощники мощный алгоритм советника на Python...

Все уроки по PyQt5

PyQt5 реализован как комплект Python-модулей. Он включает в себя около 620 классов и 6000 функций и методов...

Скрипт отправки SMS через Python

Была задача отправить SMS-ки большому списку номеров телефона с уточнением цены за всю рассылку "До" ее отправки...

Вывод данных из таблицы SQLite [Часть 3]

Вывод данных из таблицы SQLite

В предыдущей статьи [часть 2] мы рассмотрели моменты создания таблицы в базу данных и внесения данных в эту таблицу. В данной статье покажем пример как получить данные из таблицы.

#!/usr/bin/python
# -*- coding: utf-8 -*-
import sqlite3 as lite
import sys
 
con = lite.connect('test.db')
 
with con:    
    cur = con.cursor()    
    cur.execute("SELECT * FROM Cars")
    rows = cur.fetchall()
 
    for row in rows:
        print row

В этом примере, мы извлекаем все данные из таблицы Cars.

cur.execute("SELECT * FROM Cars")

Этот SQL запрос выбирает все данные из таблицы Cars.

rows = cur.fetchall()

Метод fetchall() получает все записи. Он возвращает результирующий набор. Технически, это кортеж. Каждый из внутренних кортежей представляет строку в таблице.

for row in rows:
    print row

Мы выводим данные в консоль, строка за строкой.

$ ./retrieveall.py
(1, u'Audi', 52642)
(2, u'Mercedes', 57127)
(3, u'Skoda', 9000)
(4, u'Volvo', 29000)
(5, u'Bentley', 350000)
(6, u'Citroen', 21000)
(7, u'Hummer', 41400)
(8, u'Volkswagen', 21600)

Это пример данных.

Получить все данные сразу нельзя, можно только в строковом виде.

#!/usr/bin/python
# -*- coding: utf-8 -*-
 
import sqlite3 as lite
import sys
 
con = lite.connect('test.db')
with con:
    cur = con.cursor()    
    cur.execute("SELECT * FROM Cars")
 
    while True:
        row = cur.fetchone()
        
        if row == None:
            break
            
        print row[0], row[1], row[2]

В этом скрипте мы соединяемся с базой данных и получаем строки таблицы Cars одну за одной.

Данный скрипт можно запускать и у себя на сервере, будь то личный компьютер или VPS от host virtual server на mirohost.net которые знамениты своим качеством предоставления услуг и быстрой технической поддержкой.

while True:

Мы обращаемся к данным из цикла «While». Когда мы читаем последнюю строку, цикл завершается.

row = cur.fetchone()
if row == None:
    break

Метод fetchone() возвращает следующую строку из таблицы. Если данных там больше не осталось, он возвращает None. В этом случае, мы прерываем цикл.

print row[0], row[1], row[2]

Данные возвращаются в форме кортежа. Здесь мы выбираем записи из кортежа. Первая – это ID, вторая – название машины и третья – цена машины.

$ ./retrieveonebyone.py
1 Audi 52642
2 Mercedes 57127
3 Skoda 9000
4 Volvo 29000
5 Bentley 350000
6 Citroen 21000
7 Hummer 41400
8 Volkswagen 21600

Такой результат скрипта мы получили после его выполнения.

twitter.com facebook.com vkontakte.ru odnoklassniki.ru mail.ru ya.ru yandex.ru
Оставьте комментарий!

Используйте нормальные имена.

Имя и сайт используются только при регистрации

Если вы уже зарегистрированы как комментатор или хотите зарегистрироваться, укажите пароль и свой действующий email. При регистрации на указанный адрес придет письмо с кодом активации и ссылкой на ваш персональный аккаунт, где вы сможете изменить свои данные, включая адрес сайта, ник, описание, контакты и т.д., а также подписку на новые комментарии.

(обязательно)