day39
今日内容:
1.对于表,库,记录的基本操作
2.数据库引擎的了解
3.表的详细
4.数据类型的掌握
1.回顾昨日对于表,库,记录的基本操作
库
增:
create database mydb2;

删:drop database mydb2;

改:alter database mydb2 charset utf8;

查:show databases;

show create database mydb2;

表:
增:
方式一:
create table mydb2.t1 (id int);

方式二:
use mydb2
create table t2 (id int);

删:
drop table t2;

改:
alter table t1 add name char(5);

alter table t1 modify name char(10);

alter table t1 change name NAME char(10);

alter table t1 drop name;

查:
desc t1;

show tables;

show create table t1;

记录:
增:
insert into t1 value(1);

insert into t1 values(2),(3);

删:
delete from t1 where id = 1;

delete from t1;

truncate t1;

改:
update t1 set id=4 where id=1;

update t1 set id =5;

查:
select * from t1;

select id from t1;

2.数据库引擎的了解
什么是引擎?
一个功能(mysql核心功能就是存储数据)的核心部分,引擎可以被分类
为什么要被分类?
为了让这个功能更加适合用户的需求
show engines;#用来查看数据库的引擎InnoDB是我这个MySQL默认的引擎(指的是用InnoDB这个存储格式来存储数据)

我们可以根据我们的要求来选择引擎创建表
create table t2 (id int) engine = blackhole;

3.表的详细
创建表的完整语法: create table 表名(字段名称 数据类型(长度) 约束条件);
create table t3 (id int,name char(5) not null);

长度用于设置数据的长度(如果添加的数据超过了指定的长度范围,超出范围的就会被丢弃)
数据类型也是一种约束
约束值得是除了数据类型外的规范
注意:字段名和表名 库名 都不能是MySQL的关键字
4.数据类型的掌握
为什么需要将数据分类
1.为了描述事物更加准确
2.描述起来更加方便
3.节省内存空间
MySQL支持的数据类型:
整型:(默认情况下整型是有符号的,需要一个二进制位存放符号)unsigned设置约束无符号
tinyint(字节数:1)、samllint(字节数:2)、int(字节数:3)、mediumint(字节数:4)、bigint(字节数:8)
特性:如果数据超出范围就尽可能保存最大的
特性的出现,是因为MySQL处于非严格模式
查看当前模式 show variables like "sql_mode"
修改为严格模式set global sql_mode = "STRICT_TRANS_TABLES"
严格模式下,值超出范围则报错
浮点型:
float(字节数:4)、double(字节数:8)、decimal(字节数:不确定,需要手动指定)
给浮点设置宽度限制:
float(m,d)
double(m,d)
decimal(m,d)
m并表示这个浮点整体的长度
d表示小数部分的长度
相同点:
都是小数,小数部分的最大长度是30
float和double 的最大整体长度为255
不同点:
decimal 整体长度最大为65
精度不同:double > float
decimal 精度是准确的 不会丢失精度
字符串型:
char(定长字符:长度是固定的 无论你存储的数据有多长 占用的容量都是一样的)
存取效率高,但是浪费空间
varchar(变长字符:长度是可变的,存的数据有多长就占用多长)
存取效率低于char,节省存储空间
时间日期:
time 时分秒
year 年份
date 日期
datetime 年月日时分秒
举例:create table t3 (id int,时间 time);

布尔类型
可以用别的类型来代替
集合枚举
set 多选多
enum多选一
举例: create table t1 (id int(5),name char(10),sex enum("男","女"),hobby set("read","run","watch TV"));


day39的更多相关文章
- day39——SQL语句简单介绍、库、表、记录、安装mysql简单命令
day39 SQL语句简单介绍 库(增删改查) 查看数据库 show databases; 查看其中一个库 show create database db1; 创建数据库 create databas ...
- CSS中的几个概念--------Day39
世界杯疯狂来袭,让这个原本就高温的夏季瞬间被引爆了,这肆虐的激情仿佛让一切都灼热了起来,绽放着刺目的光,工作之余总有那么一群人在那激烈的讨论着争辩着,抑不住的亢奋. 非常不巧,往往这群身影中总有我的存 ...
- day39数据库之基本数据类型
数据库之数据类型1.数据存储引擎 一个功能的核心部分,回到mysql 核心功能是存储数据 涉及到存储数据的代码 就称之为存储引擎 根据不同的需求 也有着不同的引擎分类 不 ...
- day39 mysql数据库基本操作
什么是数据库 用来存储数据的仓库 数据库可以在硬盘及内存中存储数据 主要学习硬盘中存储数据,因为内存中的数据总有一天会丢失 数据库与文件存储数据区别 (公司的开发是综合内容的) 数据库本质也是通过文件 ...
- python 全栈开发,Day39(进程同步控制(锁,信号量,事件),进程间通信(队列,生产者消费者模型))
昨日内容回顾 python中启动子进程并发编程并发 :多段程序看起来是同时运行的ftp 网盘不支持并发socketserver 多进程 并发异步 两个进程 分别做不同的事情 创建新进程join :阻塞 ...
- day39机器学习
2 Numpy快速上手 2.1. 什么是Numpy Numpy是Python的一个科学计算的库 主要提供矩阵运算的功能,而矩阵运算在机器学习领域应用非常广泛 Numpy一般与Scipy.matplot ...
- day39 css
一.css的引入方式 在HTML中引入css方式总共有三种: 行内样式 内接样式 外接样式 3.1 链接式 3.1 导入式 css介绍 现在的互联网前端分三层: HTML:超文本标记语言.从语义的角度 ...
- saltstack主机管理项目【day39】:主机管理项目开发
项目目标 salt state.apply -h "ubuntu,centos" -g "ubuntu,centos" -f "ubuntu,cent ...
- day39 python 学习 数据库学习 五个约束,数据库设计(一对一,一对多等等)
删除重复数据: 注意数据库不能又查又删 *******#删除作者为重复数据并保留ID最大的是数据 delete from ren where author in (select * from(sel ...
随机推荐
- js-ES6学习笔记-编程风格(1)
1.ES6提出了两个新的声明变量的命令:let和const.其中,let完全可以取代var,因为两者语义相同,而且let没有副作用. 2.var命令存在变量提升效用,let命令没有这个问题.建议不再使 ...
- for循环中嵌套setTimeout,执行顺序和结果该如何理解?
这两天在捣鼓作用域的问题,有的时候知识这个东西真的有点像是牵一发而动全身的感觉.在理解作用域的时候,又看到了一道经典的面试题和例子题. 那就是在for循环中嵌套setTimeout延时,想想之前面试的 ...
- [基础知识]在PeopleSoft中SMTP设置不生效如何查找问题
在PeopleSoft中如果配置了工作流邮件或者标准页面的通知,都是可以发送出邮件的,这些邮件都是由SMTP服务器发送.SMTP需要在APP服务器和PRCS服务器中配置. 如果无法从PeopleSof ...
- MySql 正则表达式简介及使用
MySql正则表达式简介及使用 by:授客 QQ:1033553122 简介 正则表达式描述了一组字符串,该字符放置于REGEXP工具后面.作用是将一个正则表达式与一个文本串进行比较. 最简单的正则表 ...
- 大数据【七】HBase部署
接着前面的Zookeeper部署之后,现在可以学习HBase了. HBase是基于Hadoop的开源分布式数据库,它以Google的BigTable为原型,设计并实现了具有高可靠性.高性能.列存储.可 ...
- [我的阿里云服务器] —— FTP配置
前言: FTP是我们用来向服务器上传或者下载文件很重要的一个工具,特别是云服务器,无法使用外设传送文件. 所以下面我们就来配置一下FTP,但是FTP的21端口,通常也是黑客进攻的一个目标,所以需要小心 ...
- LeetCode题解之Merge k Sorted Lists 解法二
1.题目描述 2.分析 利用 vector 存储指针,同时合并k个链表. 3.代码 ListNode* mergeKLists(vector<ListNode*>& lists) ...
- 解决mysql日志显示时间和“Got an error reading communication packets” 问题
[root@calldb3 data]# tail -f mysql.error :.884160Z to db: 'calldb' user: 'call' host: '172.31.50.220 ...
- Error Fix – Replication subscriber does not exist on the server anymore(删除Replication时报错的解决办法)
Recently one of my client has faced weird situation related to SQL Server Replication. Their main da ...
- linux操作系统不重启添加raid0步骤
1.限制:本步骤仅适用于LSI芯片的raid卡,可以通过以下蓝色指令判断是否LSI芯片 [root@HKC-Lab-CDN ~]# lspci | grep -i lsi 03:00.0 RAID b ...