首先需要安装sqlalchemy
根据所需情况调用数据库接口,对数据库进行操作
pymysql:
mysql+pymysql://<username>:<password>@<host>/<dbname>[?<options>]
MySQL-Python:
mysql+mysqldb://<user>:<password>@<host>[:<port>]/<dbname>
官方文档:http://docs.sqlalchemy.org/en/latest/dialects/index.html

# -*- coding:utf-8 -*-
__author__ = "MuT6 Sch01aR" from sqlalchemy import create_engine
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy import Column,String,Integer engine = create_engine("mysql+pymysql://root:root@127.0.0.1/test",encoding="utf-8",echo=True,max_overflow=5)
#连接mysql数据库,echo为是否打印结果 Base = declarative_base() #生成orm基类 class User(Base): #继承生成的orm基类
__tablename__ = "sql_test" #表名
id = Column(Integer,primary_key=True) #设置主键
user_name = Column(String(32))
user_password = Column(String(64)) class Admin(Base):
__tablename__ = "admin"
id = Column(Integer, primary_key=True)
username = Column(String(32))
password = Column(String(64)) Base.metadata.create_all(engine) #创建表结构
#父类Base调用所有继承他的子类来创建表结构

运行

echo设置为True打印了返回的结果

在mysql中查看结果

表也创建成功

如果已经有了同名的表,将不会覆盖创建该表

给表插入数据

# -*- coding:utf-8 -*-
__author__ = "MuT6 Sch01aR" from sqlalchemy import create_engine
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy import Column,String,Integer
from sqlalchemy.orm import sessionmaker engine = create_engine("mysql+pymysql://root:root@127.0.0.1/test",encoding="utf-8",echo=False,max_overflow=5) Base = declarative_base() class Admin(Base):
__tablename__ = "admin"
id = Column(Integer, primary_key=True)
username = Column(String(32))
password = Column(String(64)) Base.metadata.create_all(engine) Session_Class = sessionmaker(bind=engine) #创建与数据库的会话,Session_Class为一个类 Session = Session_Class() #实例化与数据库的会话 t1 = Admin(username='test',password='123456') #生成admin表要插入的一条数据
t2 = Admin(username='test1',password='abcdef') #生成admin表要插入的一条数据 print(t1.username,t1.password)
print(t2.username,t2.password) Session.add(t1) #把admin表要插入的数据添加到Session里
Session.add(t2) Session.commit() #提交,不然不能创建数据

运行结果

数据也创建成功

Python数据库(三)-使用sqlalchemy创建表的更多相关文章

  1. flask的orm框架(SQLAlchemy)-创建表

    # 转载请留言联系 ORM 是什么? ORM,Object-Relation Mapping.意思就是对象-关系映射.ORM 主要实现模型对象到关系数据库数据的映射. 优点 : 只需要面向对象编程, ...

  2. SQL语句创建数据库,SQL语句删除数据库,SQL语句创建表,SQL语句删除表,SQL语句添加约束,SQL语句删除约束

    创建数据库: CREATE DATABASE Test --要创建的数据库名称 ON PRIMARY ( --数据库文件的具体描述 NAME='Test_data', --主数据文件的逻辑名称 FIL ...

  3. oarcle数据库导入导出,创建表空间

    oracle导入导出(前提,本机已经安装oracle和oracle客户端)导出命令: exp username/password@192.168.1.138/ORCL file=c:\test.dmp ...

  4. Android数据库高手秘籍(三)——使用LitePal升级表

    转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/39151617 在上一篇文章中,我们学习了LitePal的基本使用方法,体验了使用框 ...

  5. SQLAlchemy基本使用,创建表,增删改查

    基础语法 创建连接 from sqlalchemy import create_engine # 写法1 engine = create_engine("postgresql://scott ...

  6. Qt 数据库创建表失败原因之数据库关键字

    本人数据库新手,在创建表时出现问题,最后经查证,找出问题所在.下面的程序是部分节选,在创建数据库表的时候,起先使用的L24的CreateDB,经测试,一直输出 Create testResult Fa ...

  7. Day13 SQLAlchemy连表操作和堡垒机

    一.数据库操作 1.创建表.插入数据和一对多查询 #!/usr/bin/env python # -*- coding: utf-8 -*- # Author: wanghuafeng from sq ...

  8. 数据库之 MySQL --- 数据处理 之 表操作、CRUD(六)

    个人博客网:https://wushaopei.github.io/    (你想要这里多有) 一. 表操作 创建数据库CREATE DATABASE demo-- 删除数据库DROP DATABAS ...

  9. Django创建表时报错django.db.utils.InternalError: (1366问题解决记录

    问题出现 执行Python manage.py makemigrations生成创建表的py文件 执行python manage.py migrate创建数据表 界面出现报错 问题原因 网上搜索原因, ...

随机推荐

  1. win 7 processing 编程环境搭建

    1.下载processing安装包: 2.下载usb驱动: 3.安装processing; 4.安装驱动: 5.在processing中编写代码: // Visualizing the data fr ...

  2. 使用 grep 查找所有包含指定文本的文件

    目标:本文提供一些关于如何搜索出指定目录或整个文件系统中那些包含指定单词或字符串的文件. 难度:容易 约定: # - 需要使用 root 权限来执行指定命令,可以直接使用 root 用户来执行也可以使 ...

  3. Android深度探索(卷1)HAL与驱动开发 虚拟环境的安装

    前言: 最近在看<Android深度探索(卷1)HAL与驱动开发>安装随书带的虚拟环境浪费了很多时间,说是虚拟环境的安装倒不如说是虚拟环境的导入,其实没什么技术含量,也没有什么复杂的,只是 ...

  4. 电子商务的几种模式,b2b,c2c等

    B2B(Business to Business) ——这是指商家与商家建立的商业关系.(最早的一种模式) C2C (Customer to Consumer) ——个人与个人的商业关系,也就是消费者 ...

  5. hdoj1012--u Calculate e

    Problem Description A simple mathematical formula for e is where n is allowed to go to infinity. Thi ...

  6. java中集合类详解

    集合类说明及区别 Collection ├List │├LinkedList │├ArrayList │└Vector │ └Stack └Set Map ├Hashtable ├HashMap └W ...

  7. 关于接口自动化的那些事 - 基于 Python

    网络请求模拟小技巧 在学习了一段时间的Python语言后,咱也大概对Python的语法和逻辑有了一定的积累,接下来,可以为接口自动化测试开始尝试做一些比较简单的准备工作啦~跟着我一起来来来~ 扩展库r ...

  8. 使用<s:property value="4"/>是报错

    报错的情况是 在jsp中引入标签 <%@ taglib uri="/struts-tags" prefix="s" %> 项目中也有ognl.jar ...

  9. Linux下Apache的安装与配置

    本文安装的httpd版本为httpd 2.4.4安装之前确保 Development Libraries与Development tools安装上.安装方法参考:http://www.linuxidc ...

  10. Mssql 跨域查询

    有数据库test1和数据库test2.其中test1中有表 table1.table2:test2 中有表 table1.三个表的字段都为为:id.xingming.shijian.shuliang. ...