看是一次插入一条还是多条,

看是数据表名是变量还是常量,

操作还是很灵活的,

主要看哪种顺手顺眼啦。

#coding=utf-8

from datetime import datetime
from sqlalchemy import (MetaData, Table, Column, Integer, Numeric, String, Boolean,
                        DateTime, ForeignKey, ForeignKey, create_engine, insert)

metadata = MetaData()

cookies = Table('cookies', metadata,
                Column('cookie_id', Integer(), primary_key=True),
                Column('cookie_name', String(50), index=True),
                Column('cookie_recipe_url', String(255)),
                Column('cookie_sku', String(55)),
                Column('quantity', Integer()),
                Column('unit_cost', Numeric(12, 2))
                )

users = Table('users', metadata,
              Column('user_id', Integer(), primary_key=True),
              Column('username', String(15), nullable=False, unique=True),
              Column('email_address', String(255), nullable=False),
              Column('phone', String(20), nullable=False),
              Column('password' ,String(25), nullable=False),
              Column('created_on', DateTime(), default=datetime.now),
              Column('updated_on', DateTime(), default=datetime.now, onupdate=datetime.now)
              )

orders = Table('orders', metadata,
               Column('order_id', Integer(), primary_key=True),
               Column('user_id', ForeignKey('users.user_id')),
               Column('shipped', Boolean(), default=False)
               )

line_items = Table('line_items', metadata,
                   Column('line_items_id', Integer(), primary_key=True),
                   Column('order_id', ForeignKey('orders.order_id')),
                   Column('cookie_id', ForeignKey('cookies.cookie_id')),
                   Column('quantity', Integer()),
                   Column('extended_cost', Numeric(12, 2))
                   )

engine = create_engine('mysql+pymysql://a:b@1.2.3.4:3306/cookies')
metadata.create_all(engine)
connection = engine.connect()

ins = cookies.insert().values(
    cookie_name="chocolate chip",
    cookie_recipe_url="http://some.aweso.me/",
    cookie_sku="CC01",
    quantity=",
    unit_cost="0.50"
    )
print(str(ins))
print ins.compile().params

result = connection.execute(ins)
print result.inserted_primary_key

ins = insert(cookies).values(
    cookie_name="chocolate chip",
    cookie_recipe_url="http://some.aweso.me/cookie/recipe.html",
    cookie_sku="CC01",
    quantity=",
    unit_cost="0.50"
    )

ins = cookies.insert()
result = connection.execute(
    ins,
    cookie_name='dark chocolate chip',
    cookie_recipe_url='http://some.aweso.me/cookie/recipe_dark.html',
    cookie_sku='CC02',
    quantity=',
    unit_cost='0.75'
    )

print result.inserted_primary_key

inventory_list = [
    {
        'cookie_name': 'peanut butter',
        'cookie_recipe_url': 'http://some.aweso.me/cookie/peanut.html',
        'cookie_sku': 'PB01',
        ',
        'unit_cost': '0.25'
        },
    {
        'cookie_name': 'oatmeal raisin',
        'cookie_recipe_url': 'http://some.okay.me/cookie/raisin.html',
        'cookie_sku': 'EWW01',
        ',
        'unit_cost': '1.00'
        }
    ]

result = connection.execute(ins, inventory_list)
print result

最新文章

  1. netfilter的钩子——数据包在内核态得捕获、修改和转发
  2. 最小生成树---Kruskal/Prime算法
  3. 一键搞定JavaEE应用,JRE+Tomcat+Mysql-JaveEE绿色运行环境JTM0.9版
  4. eclipse 3.7 配置svn
  5. Analyzer的报表复制、移动
  6. 配置VNCserver
  7. JS源码(条件的判定,循环,数组,函数,对象)整理摘录
  8. LayoutInflater类详解
  9. oracle 对象权限 系统权限 角色权限
  10. poj3358 Period of an Infinite Binary Expansion 数论有难度
  11. [开源]Dapper Repository 一种实现方式
  12. bzoj2194 快速傅立叶之二 ntt
  13. vue_drf之实现极验滑动验证码
  14. Spring 使用介绍(十三)—— Bean的生命周期
  15. 大话DI依赖注入+IOC控制反转(一) 之 定义
  16. IDC Digital Transition Annual Festival(2018.10.19)
  17. Android ADB 基本命令
  18. 第30章:MongoDB-索引--地理信息索引
  19. Tree CodeForces - 1111E (树,计数,换根)
  20. 公司架构理解 - 千万 pv 网站

热门文章

  1. HDU 4707 DFS
  2. note:获取字符输入的一些函数
  3. 八数码问题:C++广度搜索实现
  4. PHP 文件下载流程
  5. hibernate query.list() 返回的数据类型
  6. php foreach循环中unset后续的键值问题
  7. Sublime text2 插件推荐
  8. HTML精确定位:scrollLeft,scrollWidth,clientWidth,offsetWidth之完全详解
  9. Increasing Triplet Subsequence
  10. host位置