예제 #1
0
파일: demo.py 프로젝트: bingtel/peewee
#!/usr/bin/env python
# -*- coding: utf-8 -*-

from peewee import MySQLDatabase, Model, CharField

# Connect to a MySQL database on network.
db = MySQLDatabase('test',
                   user='******',
                   password='******',
                   host='192.168.40.124',
                   port=3306)

db.connect()


class BModel(Model):
    class Meta:
        database = db
        import pdb
        pdb.set_trace()


class User(BModel):
    name = CharField()


print db.extract_date('t', 'a')
print db.get_tables()
print db.get_tables()
from peewee import MySQLDatabase, SqliteDatabase
from playhouse.reflection import Introspector, print_model, print_table_sql

# step 1: generate a Model class for each table found in the source SQLite database
sqlite_db = SqliteDatabase("prodigy.db")
introspector = Introspector.from_database(sqlite_db)
models = introspector.generate_models()

# print a user-friendly description of the generated models and their SQL
for model in models.keys():
    print_model(models[model])
    print_table_sql(models[model])

# step 2: create the tables using their model classes
mysql_db = MySQLDatabase(
    user="******",
    password="******",
    host="host name",
    port=3306,
    database="database name",
    ssl={"ssl": {
        "ssl_ca": "certificate.crt.pem"
    }},
)

mysql_db.connect()
mysql_db.create_tables(list(models.values()))
mysql_db.get_tables()
mysql_db.close()