2015-06-13 5 views
4

Я недавно установил Microsoft SQL Server 2014 на своем ПК, так как хочу создать базу данных для веб-приложения, которое я создаю (я изучал Python в течение года и имел очень простой опыт работы с SQLite).Не удалось подключиться к SQL-серверу с помощью python

После установки SQL Server 2014 и создания базы данных под названием «Пользователи» я просто пытаюсь запустить некоторые очень простые команды в моей базе данных, но я снова и снова сталкиваюсь с первым препятствием!

Я установил pymssql и pyobbc и попытался выполнить команды непосредственно с ними, но не смог. (например, pymssql дает мне аргумент TypeError: тип «NoneType» не является итерируемым, когда я устанавливаю переменную conn = pymssql.connect (сервер, пользователь, пароль, «tempdb»)

Моя последняя попытка - использовать SQLalchemy для достигните моего долгожданного соединения с базой данных SQL. Однако после установки этого файла он не работает при следующей ошибке: «sqlalchemy.exc.OperationalError: (pymssql.OperationalError) (20009,« Сообщение об ошибке DB-Lib 20009, серьезность 9 : \ nВозможно подключаться: Adaptive Server недоступен или не существует \ nNet-Lib ошибка во время неизвестной ошибки (10035) \ n ') "

Вопрос, на который мне нужно ответить, как начать разговор с моей базой данных используя SQLalchemy?

код, я использую это следующим образом: от SQLAlchemy импорта *

engine = create_engine('mssql+pymssql://Han & Lew:@SlugarPlum:1433/Users') 

    m = MetaData() 

    t = Table('t', m, 
      Column('id', Integer, primary_key=True), 
      Column('x', Integer)) 

    m.create_all(engine) 

Да, мой компьютер называется SlugarPlum. Пользователь Han & Lew. И мой сервер называется THELROYSERVER. DSN = 1433. Нет пароля. (Я не знаю, насколько разумно, что я даю эту информацию в Интернете, но данные, которые у меня есть, не чувствительны, поэтому я думаю, что это стоит того.)

Кроме того, если кто-нибудь может направить меня к ультра-новичкам ресурс для сервера Python-SQL, который был бы потрясающим, поскольку меня избивают, насколько сложным это кажется!

+1

Помогло ли вам подтвердить свою учетную запись, используя диспетчер студий SQL-сервера? – abaldwin99

+0

Спасибо, что вернулись ко мне. Я вошел в систему и использовал консоль управления, а также зарегистрировал учетную запись Microsoft и т. Д. – LemusThelroy

ответ

1

Здесь представлена ​​функция подключения и пример подключения через pyodbc. Подключение через pymssql должно быть таким же простым, как форматирование соединительной строки для pymssql. Я предоставил параметры Windows и Linux, но тестировал только в Linux. Я надеюсь, что это помогает.

def sqlalchemy_connect(connect_string): 
    """ Connect to the database via ODBC, start SQL Alchemy engine. """ 

    def connect(): 
     return pyodbc.connect(connect_string, autocommit=True) 

    db = create_engine('mssql://', creator=connect) 
    db.echo = False 

    return db 

def main(): 
    global DBCONN 

    # Linux with FreeTDS 
    connect_string = "DRIVER={FreeTDS};SERVER=<server name>;PORT=<port num>;DATABASE=<db>;UID=<user>;PWD=<password>;TDS_Version=<version num>;" 

    # Windows with SQL Server 
    connect_string = "DRIVER={SQL Server};SERVER=<server name>;PORT=<port num>;DATABASE=<db>;UID=<user>;PWD=<password>;" 

    DBCONN = sqlalchemy_connect(connect_string) 


if __name__ == "__main__": 
    main() 
Смежные вопросы