Уведомления

Группа в Telegram: @pythonsu

#1 Окт. 28, 2015 10:06:42

tisul
Зарегистрирован: 2014-01-06
Сообщения: 25
Репутация: +  0  -
Профиль   Отправить e-mail  

mySQl 5.6 и alchemy

Здравствуйте! Помогите новичку решить проблему
пытаюсь с помощью Declarative создать таблицу и записать данные в нее. Делаю все по документации.
Мой конфиг: python 34, mysqlconnector 2.*, mysql 5.6 на совместимость все проверил
если таблица существует в базе то все работает если нет то выскакивает ошибка что нет таблицы
rmk.myuserss
смотрю ‘echo’ нет команды создания таблицы что делаю не так

from sqlalchemy import create_engine
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy import Column, Integer, String
from sqlalchemy.orm import sessionmaker
if __name__ == '__main__':
    engine = create_engine('mysql+mysqlconnector://root:1111@localhost/rmk', echo=True)
    Base = declarative_base()
    class User(Base):
        __tablename__ = 'myuserss'
        id = Column(Integer, primary_key=True)
        name = Column(String(50))
        fullname = Column(String(100))
        password = Column(String(20))
        def __int__(self, name, fullname, password):
            self.name = name
            self.fullname = fullname
            self.password = password
        def __repr__(self):
            return "<User(name=s%, fullname=s%, password=s%)>" % (self.name, self.fullname, self.password)
    ed_user = User(name='ed', fullname='Ed Jones', password='eds')
    Session = sessionmaker(bind=engine)
    session = Session()
    session.add(ed_user)
    session.commit()
echo:
2015-10-28 13:40:31,335 INFO sqlalchemy.engine.base.Engine SHOW VARIABLES LIKE ‘sql_mode’
2015-10-28 13:40:31,335 INFO sqlalchemy.engine.base.Engine {}
2015-10-28 13:40:31,336 INFO sqlalchemy.engine.base.Engine SELECT DATABASE()
2015-10-28 13:40:31,337 INFO sqlalchemy.engine.base.Engine {}
2015-10-28 13:40:31,338 INFO sqlalchemy.engine.base.Engine
SELECT CAST('test plain returns' AS CHAR(60)) AS anon_1
2015-10-28 13:40:31,338 INFO sqlalchemy.engine.base.Engine {}
2015-10-28 13:40:31,339 INFO sqlalchemy.engine.base.Engine
SELECT CAST('test unicode returns' AS CHAR(60)) AS anon_1
2015-10-28 13:40:31,339 INFO sqlalchemy.engine.base.Engine {}
2015-10-28 13:40:31,339 INFO sqlalchemy.engine.base.Engine BEGIN (implicit)
2015-10-28 13:40:31,340 INFO sqlalchemy.engine.base.Engine INSERT INTO
myuserss (name, fullname, password) VALUES (%(name)s, %(fullname)s, %(password)s)
2015-10-28 13:40:31,340 INFO sqlalchemy.engine.base.Engine
{'password': ‘eds’, ‘name’: ‘ed’, ‘fullname’: ‘Ed Jones’}
2015-10-28 13:40:31,341 INFO sqlalchemy.engine.base.Engine ROLLBACK

sqlalchemy.exc.ProgrammingError: (mysql.connector.errors.ProgrammingError) 1146 (42S02):
Table ‘rmk.myuserss’ doesn't exist [SQL: ‘INSERT INTO myuserss (name, fullname, password) VALUES
(%(name)s, %(fullname)s, %(password)s)’]

Отредактировано tisul (Окт. 28, 2015 17:11:23)

Офлайн

#2 Окт. 28, 2015 10:22:35

J.R.
Зарегистрирован: 2015-07-18
Сообщения: 147
Репутация: +  16  -
Профиль  

mySQl 5.6 и alchemy

.

Отредактировано J.R. (Янв. 27, 2016 08:45:27)

Офлайн

#3 Окт. 28, 2015 10:24:54

sander
Зарегистрирован: 2015-02-19
Сообщения: 317
Репутация: +  53  -
Профиль   Отправить e-mail  

mySQl 5.6 и alchemy

tisul

tisul
нет команды создания таблицы что делаю не так
пытаетесь записать в несуществующую таблицу. Ваш КО.

Base.metadata.create_all(engine)

Отредактировано sander (Окт. 28, 2015 10:25:07)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version