Найти - Пользователи
Полная версия: Не могу сделать выборку из таблицы в базе..
Начало » Python для новичков » Не могу сделать выборку из таблицы в базе..
1
2234
Добрый день,

Помогите пожалуйста, не получается сделать выборку из таблицы (в базе), подключение проходит, а select нет.

Python 3.2
База SQL 2008
установлен pyodbc модуль


Подключение проходит.

import pyodbc
cnxn = pyodbc.connect('DRIVER={SQL Server};SERVER=#;DATABASE=#;UID=#;PWD=#')
cursor = cnxn.cursor()

t = ('1',)
c.execute('select ms from Voice where symbol=?', t)

Ошибка:
Traceback (most recent call last):
File “C:\Python32\base_v1.2.py”, line 7, in <module>
c.execute('select ms from Voice where symbol=?', t)
NameError: name ‘c’ is not defined


Пробовал второй вариант тоже не проходит.

#cursor.execute(“select * from Voice”)
#row = cursor.fetchone()
#if row:
# print(row)

Ошибка:
Traceback (most recent call last):
File “C:\Python32\base_v1.2.py”, line 10, in <module>
cursor.execute(“select ms from Voice”)
pyodbc.ProgrammingError: ('42S02', " Invalid object name ‘Voice’. (208) (SQLExecDirectW)")

Заранее благодарю.





py.user.next
2234
NameError: name c is not defined
Имя c не определено. Там cursor надо писать.

2234
pyodbc.ProgrammingError: ('42S02', " Invalid object name ‘Voice’. (208) (SQLExecDirectW)")
Нет такой таблицы. Либо базу не выбрал, либо имя не то.
2234
py.user.next

Попробовал вот так.(Вариант 1) Коннект прошел.
import pyodbc
cnxn = pyodbc.connect('DRIVER={SQL Server};SERVER=#;DATABASE=#;UID=#;PWD=#')
t = ('1',)
c.execute('select ms from Voice where symbol=?', t)
Ошибка таже:
Traceback (most recent call last):
  File "C:\Python32\base_v1.2.py", line 7, in <module>
    c.execute('select ms from Voice where symbol=?', t)
NameError: name 'c' is not defined
Вариант 2
import pyodbc
cnxn = pyodbc.connect('DRIVER={SQL Server};SERVER=#;DATABASE=#;UID=#;PWD=#')
cursor = cnxn.cursor()
cursor.execute("select ms from Voice")
row = cursor.fetchone()
if row:
    print(row)
Ошибка:
Traceback (most recent call last):
  File "C:\Python32\base_v1.2.py", line 10, in <module>
    cursor.execute("select ms from Voice")
pyodbc.ProgrammingError: ('42S02', "[42S02] [Microsoft][ODBC SQL Server Driver][SQL Server]Invalid object name 'Voice'. (208) (SQLExecDirectW)")
Таблица правильная, база правильная имя тоже правильное.
Коннект проходит.(# - вставляю свои данные)
import pyodbc
cnxn = pyodbc.connect('DRIVER={SQL Server};SERVER=#;DATABASE=#;UID=#;PWD=#')
cursor = cnxn.cursor()

Подскажите пожалуйста.
FishHook
Не очень получилось. Тренируйся.
FishHook
Я к чему, оформляй код по-человечески или никак.
py.user.next
2234
cnxn = pyodbc.connect('DRIVER={SQL Server};SERVER=#;DATABASE=#;UID=#;PWD=#')
Заполни решётки буквами. Даже если это синтаксис какой-то специальный, надо всё равно попробовать.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB