2015-12-29 3 views
-3

Я работаю над приложением и в настоящее время фокусируюсь на области базы данных.Python: как я могу устранить эту функцию?

Я успешно установил функции, которые создают базы данных и записывают их, однако прямо сейчас я пытаюсь получить определенные строки из базы данных, но НИКАКОГО МАТЕРИАЛА, ЧТО Я ПРОТИВ Я всегда получаю синтаксическую ошибку. НЕЗАВИСИМО мой SQL-запрос, sqlite browser.

Это мой код неисправности:

def findapple(): 
    conn = sqlite3.connect('working.db') 
    c = conn.cursor() 
    for row in c.execute('SELECT * FROM "working" WHERE "symbol" = 'aapl';') 
     print row 

Если я понимаю, код я написал, он должен подключиться к «working.db» создать курсор для базы данных, то для каждой строки, которые соответствуют моему запросу его следует распечатать на консоли.

Может ли кто-нибудь помочь пролить свет на это?

Спасибо!

Текущий код За комментарии ниже:

def findapple(): 
conn = sqlite3.connect('working.db') 
c = conn.cursor() 
for row in c.execute('SELECT * FROM working WHERE symbol = 'aapl'') 
    print row 

и выход ошибки:

Traceback (most recent call last): 
    File "main.py", line 1, in <module> 
    from stock import * 
    File "/Users/ME/Documents/Code/Stocks/stock/database.py", line 61 
    for row in c.execute('SELECT * FROM working WHERE symbol = 'aapl'') 
+0

вам не нужна точка с запятой разделитель. Также пропустите цитаты вокруг имен таблиц и столбцов – Sathya

+0

@Sathya Still Fails со следующим: Traceback (последний последний звонок): Файл «main.py», строка 1, в из импорта запаса * Файл «/ Пользователи/DJ/Documents/Code/Stocks/stock/ database.py ", строка 61 для строки в c.execute ('SELECT * FROM working WHERE symbol =' apple '') Есть каротин под LI, клянусь вам, я пробовал это всю ночь и читал синтаксис sqlite и т. д., я просто не могу заставить это работать, и я не уверен, как еще устранить неполадки. – user502301

+0

Вы не можете вставить одну кавычку 'aapl'' внутри * другой * строка с одним кавычком 'SELECT * FROM working WHERE symbol = 'aapl''' –

ответ

0

Ваш синтаксис строки неправильно:

c.execute('SELECT * FROM working WHERE symbol = "aapl"') 
+0

'Traceback (последний последний звонок): Файл« main.py », строка 1, in из импорта запаса * Файл« /Users/ME/Documents/Code/Stocks/stock/database.py », строка 61 для строки в c.execute ('SELECT * FROM ", работающей символом WHERE" = "aapl";') ' Мой терминал указывает на закрывающиеся круглые скобки. Я использую python 2.7.10 на Mac обновлен полностью. есть ли какая-либо другая информация, которую я могу дать вам, чтобы помочь устранить эту проблему? – user502301

Смежные вопросы