sqlalchemy 学习-- 多表操作】的更多相关文章

以下所有代码片段都使用了统一的引用,该引用如下: from sqlalchemy import create_engine, ForeignKey from sqlalchemy.ext.declarative import declarative_base from sqlalchemy import Column, String, Integer, Table from sqlalchemy.orm import relationship, sessionmaker engine = cre…
一对多:一对一 # one -- many class Students(Base): __tablename__ = "students" sid = Column(Integer, primary_key=True) name = Column(String(30)) age = Column(Integer) tid = Column(Integer, ForeignKey("teachers.tid")) # 声明字段值受到另一个表的字段值得约束,注意是&l…
ORM的两种创建方式 数据库优先:指的是先创建数据库,包括表和字段的建立,然后根据数据库生成ORM的代码,它是先创建数据库,再创建相关程序代码 代码优先:就是先写代码,然后根据代码去生成数据库结构. 代码优先创建数据库的本质:拿到类-->转换成table对象, 然后根据table对象生成sql语句--> 生成数据库表结构 另外两个知识点: 改变数据输出的方式:可以在表的类中定义一个特殊成员:__repr__,return一个自定义的由字符串拼接的数据连接方式. 数据库中表关系之间除了MySQL…
多对一连表操作 首先有两个知识点: 改变数据输出的方式:可以在表的类中定义一个特殊成员:__repr__,return一个自定义的由字符串拼接的数据连接方式. 数据库中表关系之间除了MySQL中标准的外键(ForeignKey)之外,还可以创建一个虚拟的关系,比如group = relationship("Group",backref='uuu'),一般此虚拟关系与foreignkey一起使用. 需求: 用户组,有sa,dba组 用户,用户只能属于一个用户组 那么从需求可以看出来,是一…
1.创建数据 CREATE DATABASE mysql_study; 2.连接数据库 USE mysql_study 3.创建数据表 CREATE TABLE person( id int auto_increment primary key, name ) not null ); 说明: auto_increment:字段为自增序列 primary key:字段为主键 not null:非空字段 4.插入数据 说明:因为主键为自增序列,所以主键会自动创建. 5.查看数据 注意事项: 1.在生…
一.显示所有表 1. 语法:show tables; 二.创建表 1. 语法:create table [if not exists] 表名( 字段名  数据类型  [null | not null] [auto_increment] [primary key] [comment], 字段名  数据类型  [default] );engine=存储引擎 2. 单词 null | not null 空|非空 default 默认值 auto_increment 自动增长 primary key 主…
Hive数据类型 基本数据类型 tinyint,smallint,int,biging,float,double,decimal,char,varchar,string,binary,boolean,timestamp,date, 引用数据类型 Array:同样数据类型组合的数组,使用array[1]訪问 MAP:Key-value键值对,通过键进行訪问,使用map['key']訪问 STRUCT:结构体类型,用来存储不同数据类型的数据,是用struct.key訪问 类型不区分大写和小写 Hiv…
##单表操作 ##创建表 CREATE TABLE t_employee( empno ), ename ), job ), MGR ), Hiredate DATE DEFAULT '0000-00-00', sal ,), comm ,), deptno ), UNIQUE INDEX uk_empno(empno) ##使用唯一索引 ); ##增 ,,), (,,,,), (,,,,), (,,,), (,,,,), (,,,), (,,,), (,,,); (,,,,); ##删 DEL…
一.表操作 以下内容都是自己学习的时候看过的一些知识,作为笔记记录一下吧,大部分都是所看文章的内容. 1.创建表 前面的基础篇笔记是相当于搭建了一个方便管理的文件夹树根,下面要学习的是一些关于表的知识,相当于树上的叶子吧! create table 表名( 列名 类型 是否可以为空, 列名 类型 是否可以为空 )ENGINE=InnoDB DEFAULT CHARSET=utf8: 下面这两个变量是: ENGINE :存储引擎 charset:字符集 是否可空,null表示空,非字符串 not…
1 MySQL学习路线 基础阶段:MySQL数据库的基本操作(增删改查),以及一些高级操作(视图.触发器.函数.存储过程等). 优化阶段:如何提高数据库的效率,如索引,分表等. 部署阶段:如何搭建真实的环境系统,如服务器集群,负载均衡等. 2 数据库的基础 2.1 什么是数据库? 数据库:database,存储数据的仓库. 数据库(专业定义):高效的存储和处理数据的介质(介质主要是两种:磁盘和内存). 2.2 数据库的分类? 基于存储介质的不同 关系型数据库(SQL) 非关系型数据库(NoSQL…