Уведомления

Группа в Telegram: @pythonsu

#1 Окт. 6, 2009 15:20:59

igor.kaist
От:
Зарегистрирован: 2007-11-12
Сообщения: 1879
Репутация: +  3  -
Профиль   Отправить e-mail  

вопросы по sqlite

rokki
Подкинь какую нибудь задачу, и сразу пару намеков для решения.
хм… не совсем понял тебя… что не получается то?



Офлайн

#2 Окт. 6, 2009 16:58:20

rokki
От:
Зарегистрирован: 2009-09-22
Сообщения: 79
Репутация: +  0  -
Профиль   Отправить e-mail  

вопросы по sqlite

еще хочу попрактиковаться, не знаю где взять задачу. Поэтому вопросов кроме этого нет.



Офлайн

#3 Окт. 6, 2009 18:18:19

igor.kaist
От:
Зарегистрирован: 2007-11-12
Сообщения: 1879
Репутация: +  3  -
Профиль   Отправить e-mail  

вопросы по sqlite

rokki
еще хочу попрактиковаться, не знаю где взять задачу. Поэтому вопросов кроме этого нет.
Тут вроде как практиковаться то и нечего. Вообщем то нужно знать как делать запросы к базе данных и получать результат… Практически все остальное это sql, который и в африке sql :)
Ну что ж… Заведи таблицу, в которой два столбца: Фамилия и зарплата. И сделай выборки: Сколько получает Сидоров, или у кого зарплата больше 30 тыс. :)



Офлайн

#4 Окт. 6, 2009 18:57:00

rokki
От:
Зарегистрирован: 2009-09-22
Сообщения: 79
Репутация: +  0  -
Профиль   Отправить e-mail  

вопросы по sqlite

от души тебе за помощь, это я теперь засяду с выборками. И вот еще, давно было интересно что означает слово ИМХО.



Офлайн

#5 Окт. 6, 2009 19:23:33

Ferroman
От:
Зарегистрирован: 2006-11-16
Сообщения: 2759
Репутация: +  1  -
Профиль   Отправить e-mail  

вопросы по sqlite


rokki
Большинство вопросов решаются 5-секундным поиском.

Офлайн

#6 Окт. 7, 2009 07:14:03

rokki
От:
Зарегистрирован: 2009-09-22
Сообщения: 79
Репутация: +  0  -
Профиль   Отправить e-mail  

вопросы по sqlite

и тебе спасибо.



Офлайн

#7 Окт. 10, 2009 15:36:53

rokki
От:
Зарегистрирован: 2009-09-22
Сообщения: 79
Репутация: +  0  -
Профиль   Отправить e-mail  

вопросы по sqlite

Ну что ж… Заведи таблицу, в которой два столбца: Фамилия и зарплата. И сделай выборки: Сколько получает Сидоров, или у кого зарплата больше 30 тыс. smile

завел таблицу, но когда каждый блок делаю отдельно все вроде бы работает, а если собираю все в один файл пишет OperationalError: cannot commit transaction - SQL statements in progress

import sqlite3
c=sqlite3.connect(database='zarplata')
cu=c.cursor()

cu.execute('''create table sved(
surname VARCHAR(15),
name VARCHAR(15),
dengi INTEGER
);''')

for t in [('ivanov','alexandr',25000),
('petrov','nikolai',30000),
('sidorov','ivan',35000)]:
cu.execute('''insert into sved values(?,?,?)''',t)

cu.execute('''select dengi from sved where ‘ivanov’=surname''')
cu.execute('''select * from sved where dengi>=30000''')

c.commit()
c.close()



Офлайн

#8 Окт. 10, 2009 15:39:34

rokki
От:
Зарегистрирован: 2009-09-22
Сообщения: 79
Репутация: +  0  -
Профиль   Отправить e-mail  

вопросы по sqlite

и че то не пойму как мне увидеть результат глазами, чтобы понять физический смысл процесса



Офлайн

#9 Окт. 10, 2009 16:15:16

PooH
От:
Зарегистрирован: 2006-12-05
Сообщения: 1948
Репутация: +  72  -
Профиль   Отправить e-mail  

вопросы по sqlite

import sqlite3
c=sqlite3.connect(database='zarplata')
cu=c.cursor()

cu.execute('''create table sved(
surname VARCHAR(15),
name VARCHAR(15),
dengi INTEGER
);''')
c.commit() #создав таблицу надо закоммитить изменения

for t in [('ivanov','alexandr',25000),
('petrov','nikolai',30000),
('sidorov','ivan',35000)]:
cu.execute('''insert into sved values(?,?,?)''',t)

c.commit() #внеся данные надо закоммитить изменения
cu.execute('''select dengi from sved where 'ivanov'=surname''')
print cu.fetchone() #выберем первую строчку результата и посмотрим
cu.execute('''select * from sved where dengi>=30000''')
print cu.fetchone() #выберем первую строчку результата и посмотрим
#c.commit() - а вот тут можно и не коммитить - изменений не было
c.close()



Вот здесь один из первых отарков съел лаборанта. Это был такой умный отарк, что понимал даже теорию относительности. Он разговаривал с лаборантом, а потом бросился на него и загрыз…

Офлайн

#10 Окт. 10, 2009 16:35:49

rokki
От:
Зарегистрирован: 2009-09-22
Сообщения: 79
Репутация: +  0  -
Профиль   Отправить e-mail  

вопросы по sqlite

#c.commit() - а вот тут можно и не коммитить - изменений не было

просто не совсем понял принцип работы commit'а.
теперь понял почему частями работало, а в одном файле нет.

PooH, можешь еще усложнить задачу igor.kaist'а?



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version