2012-03-27 58 views
0

我似乎找到了很多关于如何使用两个表的教程,但我似乎无法弄清楚如何创建两个表。我可能错过了一些非常简单的事情。在Python中的sqlite3数据库中创建两个表

我想为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。我应该怎么做?

非常感谢您。

回答

2

您没有将任何物品插入表2

你插入到表1

for ele in my_data_2: 
    c.execute('''INSERT INTO MY_TABLE_2 VALUES(?,?,?)''',ele) 
+0

后试试这个代码,我知道我失去了一些东西简单:)。谢谢。 – Akavall 2012-03-27 15:34:33