Создать две таблицы в базе данных sqlite3 на Python - PullRequest
0 голосов
/ 27 марта 2012

Кажется, я нашел много уроков о том, как работать с двумя таблицами, но я не могу понять, как создать две таблицы.Возможно, мне не хватает чего-то очень простого.

Я хочу создать таблицу для my_data_1 и my_data_2.Вот мой код:

import sqlite3

my_data_1 = [('a',1,'BUY'),('b',2,'SELL'),('c',3,'HOLD')]

my_data_2 = [('a',1,5),('d',6,6),('e',2,7)]

 #I am using :memory: because I want to experiment
 #with the database a lot

conn = sqlite3.connect(':memory:') 

c = conn.cursor()

c.execute('''CREATE TABLE MY_TABLE_1
          (stock TEXT, price REAL, recommendation TEXT )''' )

### Something is probably wrong with the following line

c.execute('''CREATE TABLE MY_TABLE_2
          (stock TEXT, price REAL, volume REAL )''' )



for ele in my_data_1:
    c.execute('''INSERT INTO MY_TABLE_1 VALUES(?,?,?)''',ele)

conn.commit()

c.execute('SELECT* FROM MY_TABLE_1')

for entry in c:
    print entry

c.execute('SELECT* FROM MY_TABLE_2')

for entry in c:
    print entry

Мой вывод:

(u'a', 1.0, u'BUY')
(u'b', 2.0, u'SELL')
(u'c', 3.0, u'HOLD')

Так что я не создал MY_TABLE_2.Как мне это сделать?

Заранее спасибо.

1 Ответ

2 голосов
/ 27 марта 2012

Вы ничего не вставляете в таблицу 2

Попробуйте этот код после вставки в таблицу 1.

for ele in my_data_2:
    c.execute('''INSERT INTO MY_TABLE_2 VALUES(?,?,?)''',ele)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...