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. 自增 ...
随机推荐
- 前端入门CSS(3)
day60 不透明度 opacity()\ opacity (不透明度) 1. 取值0~1 2. 和rgba()的区别: ...
- 比特、字节、K
比特(bit) 比特,计算机专业术语,是信息量单位,由英文BIT音译而来.BIT为Binary digit(二进制数)位的缩写.二进制数的一位所包含的信息就是一比特,如二进制数0100就是4比特. 字 ...
- 读/写锁的实现和应用(高并发状态下的map实现)
程序中涉及到对一些共享资源的读和写操作,且写操作没有读操作那么频繁.在没有写操作的时候,两个线程同时读一个资源没有任何问题,所以应该允许多个线程能在同时读取共享资源.但是如果有一个线程想去写这些共享资 ...
- #阿里云#云服务器搭建git服务器
前言:大家都知道,git是非常方便的版本控制工具,目前网上有很多免费的git仓库可以给我们使用,但是有些时候我们并不放心将我们的项目寄放在别人的服务器上,这个时候就需要自己搭建一个git服务器,十分的 ...
- nginx添加认证
1.检查工具是否安装,如果未安装则使用yum安装 #htpasswd 有以上输出表示已经安装,如果没有按装,使用如下命令安装: #yum -y install httpd-tools 2.htpas ...
- Kafka消息队列
转自:http://blog.csdn.net/yfkiss/article/details/17348693 代码案例 http://blog.csdn.net/ganglia/article/de ...
- C、C++基础和编程风格 (转)
原文链接 作者:寒小阳时间:2013年8月.出处:http://blog.csdn.net/han_xiaoyang/article/details/10515417.声明:版权所有,转载请注明出处, ...
- tensorflow进阶篇-3
#-*- coding:utf-8 -*- #Tensorflow的嵌入Layer import numpy as np import tensorflow as tf sess=tf.Session ...
- JavaMail学习之一-邮件传输协议
协议:规定好的格式就是协议.就像http协议有请求协议和响应协议,邮件传输也分为发.收邮件的协议. 邮件协议分3种: 发邮件的:SMTP (Simple Mail Transport Protoca ...
- jquery.lazyload插件实现图片延迟加载
jquery.lazyload是一个实现图片延迟加载的jQuery 插件,它可以延迟加载长页面中的图片.在浏览器可视区域外的图片在初始状态下不会被载入,直到用户将页面滚动到它们所在的位置. 1.引入j ...