python学习之老男孩python全栈第九期_数据库day001知识点总结 —— MySQL操作数据库以及数据表、基本数据类型、基本增删改查、外键定义以及创建
一. 学习SQL语句规则以及外键
1. 操作文件夹
create database db2; 创建文件夹
create database db2 default charset utf8; 创建文件夹,且数据库是utf-8编码
show databases; 查看文件夹
drop database db2; 删除文件夹
2. 操作文件
use dn2; 进入文件夹
show tables; 查看所有文件
create table t1(id int,name char(10)); 创建一个有两列的表
create table t1(id int,name char(10)) default charset = utf8; 创建一个有两列的表,且内容为utf8编码 create table t1(
列名,类型 null, # 是否为空
列名,类型 not null default 1,
列名,类型 not null auto_increment, # 自增
id int,
name char(10)
) engine = innodb default charset = utf8;
比如:
create table t1(
id int not null auto_increment primary key, # 这两个一般要一起写
# auto_increment : 表示自增;一个表里面只能有一个自增列
# primary key :表示 约束(不能重复,且不能为空);加速查找
name char(10)
) engine = innodb default charset = utf8; innodb 支持事务,原子性操作
myisam 不支持事务 delete from t1; # 把表里面的内容清空,且若再插入数据,自增id会继续之前的顺序,而不是从头开始自增
truncate table t1; # 把表里面的内容清空,且若再插入数据,自增id会从头开始自增
drop table t1; # 删除表
3. 操作文件中内容
insert into t1(id, name) values(1, 'egon'); 插入一条数据
delete from t1 where id < 6; 删除数据
update t1 set age =18; 把age列 全部改成18
update t1 set age =18 where age = 17; 把age等于17的,改成18
select * from t1; 查看
外键:
create table userinfo(
uid bigint auto_increment primary key,
name varchar(32),
department_id int,
constraint fk_user_depar foreign key ('department_id',) references department('id') # 外键约束
)engine = innodb default charset = utf8; create table department(
id bigint auto_increment primary key,
titlt char(32)
)engine = innodb default charset = utf8;

二. MySQL数据表基本数据类型
数据类型:
数字:
tinyint
int
bigint
小数:
float(不太精准)
double(不太精准)
decimal(精准小数) 字符串:
char(10): (最大255字符)
如果没有10个,就会自动填充空格到10个,(root )
varchar(10): (最大255字符)
最多能写10个,不会填充(root),节省空间,但速度没有char快
创建数据表时,定长列往前放置,变长的往后放 text 上传文件:
文件存硬盘
db存路径 enum 枚举 set 时间类型:
datetime:YYYY-MM-DD HH:MM:SS create table t1(
id int not null auto_increment primary key,
num decimal(10,5), # ()里面 第一个数是总位数,第二个数是小数点后面最多几位
name char(10)
) engine = innodb default charset = utf8;
python学习之老男孩python全栈第九期_数据库day001知识点总结 —— MySQL操作数据库以及数据表、基本数据类型、基本增删改查、外键定义以及创建的更多相关文章
- python全栈开发中级班全程笔记(第二模块、第三章)(员工信息增删改查作业讲解)
python全栈开发中级班全程笔记 第三章:员工信息增删改查作业代码 作业要求: 员工增删改查表用代码实现一个简单的员工信息增删改查表需求: 1.支持模糊查询,(1.find name ,age fo ...
- python学习之老男孩python全栈第九期_数据库day004知识点总结 —— MySQL数据库day4
复习: 1. MySQL:文件管理的软件 2. 三部分: - 服务端 - SQL语句 - 客户端 3. 客户端: - MySQL - navicat 4. 授权操作: - 用户操作 - 授权操作 5. ...
- python学习之老男孩python全栈第九期_数据库day002知识点总结 —— MySQL数据库day2(全部)
一. 复习1. MySQL: - 服务端 - 客户端2. 通信交流 - 授权 - SQL语句 - 数据库 创建数据库: create database db1 default charset utf8 ...
- python学习之老男孩python全栈第九期_第二周学习总结
迭代器 双下方法:很少直接调用的方法,一般情况下,是通过其他语法触发的 1. 可迭代的 --> 可迭代协议:含有__iter__的方法( '__iter__' in dir(数据) ) 可迭代的 ...
- python学习之老男孩python全栈第九期_第一次周末考试题(over)第三次添加完毕
day 6python基础数据类型考试题 考试时间:两个半小时 满分100分(80分以上包含80分及格) 一,基础题. 1. 简述变量命名规范(3分) 答:(1) 变量为数字,字母以及下划线的任意组合 ...
- python学习之老男孩python全栈第九期_数据库day005知识点总结 —— MySQL数据库day5
三. MySQL视图(不常用) 给某个查询语句设置个别名(视图名),日后方便使用 - 创建: create view 视图名 as SQL; PS:视图是虚拟的 - 修改: alter view 视图 ...
- python学习之老男孩python全栈第九期_数据库day002 -- 作业 (数据库为day001创建的数据库)
1.自行创建测试数据 对score表进行优化: 添加数据: 2.查询“生物”课程比“物理”课程成绩高的所有学生的学号: 为了方便做题,额外增加几条数据 查询: 3.查询平均成绩大于60分的同学的学号和 ...
- python学习之老男孩python全栈第九期_数据库day004 -- 作业
https://www.cnblogs.com/YD2018/p/9451809.html 11. 查询学过“001”并且也学过编号“002”课程的同学的学号.姓名 select student.si ...
- python学习之老男孩python全栈第九期_数据库day003知识点总结 —— MySQL数据库day3
复习: 1. 增 insert into xx(name) values('root'),('xxx'); insert into xx(name) select id from tb1; 2. 自增 ...
随机推荐
- robot framework —— 变量文件
何为变量文件? 变量文件中包含了测试数据中的变量.虽然变量可以通过变量表格中创建, 或者通过命令行设置, 不过这些方法有所局限, 而变量文件可以动态地创建任意类型的变量. 变量文件一般由Python模 ...
- Redis的Pub/Sub机制存在的问题以及解决方案
Redis的Pub/Sub机制使用非常简单的方式实现了观察者模式,但是在使用过程中我们发现,它仅仅是实现了发布订阅机制,但是很多的场景没有考虑到.例如一下的几种场景: 1.数据可靠性无法保证 一个re ...
- javaweb+spring 项目集成异常的处理
在web项目开发中,一个系统应该要考虑到异常情况的处理,并且应该当异常发生时应该需要记录相应的异常日志,对于用户而言则不能直接抛出异常,需要考虑到用户的体验: 以下就介绍基于spring框架的基础上的 ...
- Zabbix3.2邮件告警python脚本
一.概述及环境要求 1.概述 zabbix监控也起到重要作用,以下是使用python脚本发送告警邮件配置方法.之前使用过sendemail邮件报警但是发现邮件主题为中文时候会出现乱码的问题. 2.环境 ...
- 6.关于Xamarin Android对APK包大小的处理
降低学习成本是每个.NET传教士义务与责任. 建立生态,保护生态,见者有份. 对于apk 包的大小大家都是很敏感的,虽然现在安卓手机的性能和存储越来越厉害了.本着能少一点是一点的态度,我们还是要深入理 ...
- strcpy,memcpy,memset函数实现
strcpy 实现,只能拷贝字符串 char* strcpy(char* des,const char* source) { char* r=des; assert((des != NULL) &am ...
- Java之集合(五)LinkedList
转载请注明源出处:http://www.cnblogs.com/lighten/p/7298017.html 1.前言 Java中另一个常见的list就是本章将要讲的LinkedList.ArrayL ...
- 再学Java 之 foreach循环
从Java 5 之后,Java提供了一种新的循环:foreach循环,这种循环遍历数组和集合更加简洁. foreach循环语法格式如下: for ( type variableName : array ...
- spring websocket 和socketjs实现单聊群聊,广播的消息推送详解
spring websocket 和socketjs实现单聊群聊,广播的消息推送详解 WebSocket简单介绍 随着互联网的发展,传统的HTTP协议已经很难满足Web应用日益复杂的需求了.近年来,随 ...
- SpringMVC路径匹配规则AntPathMatcher
前言 本文是基于Spring Framework 4.3.3分析. 正文 SpringMVC的路径匹配规则是依照Ant的来的. 实际上不只是SpringMVC,整个Spring框架的路径解析都是按照A ...