今日内容:

  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的更多相关文章

  1. day39——SQL语句简单介绍、库、表、记录、安装mysql简单命令

    day39 SQL语句简单介绍 库(增删改查) 查看数据库 show databases; 查看其中一个库 show create database db1; 创建数据库 create databas ...

  2. CSS中的几个概念--------Day39

    世界杯疯狂来袭,让这个原本就高温的夏季瞬间被引爆了,这肆虐的激情仿佛让一切都灼热了起来,绽放着刺目的光,工作之余总有那么一群人在那激烈的讨论着争辩着,抑不住的亢奋. 非常不巧,往往这群身影中总有我的存 ...

  3. day39数据库之基本数据类型

    数据库之数据类型1.数据存储引擎 一个功能的核心部分,回到mysql        核心功能是存储数据  涉及到存储数据的代码 就称之为存储引擎        根据不同的需求 也有着不同的引擎分类 不 ...

  4. day39 mysql数据库基本操作

    什么是数据库 用来存储数据的仓库 数据库可以在硬盘及内存中存储数据 主要学习硬盘中存储数据,因为内存中的数据总有一天会丢失 数据库与文件存储数据区别 (公司的开发是综合内容的) 数据库本质也是通过文件 ...

  5. python 全栈开发,Day39(进程同步控制(锁,信号量,事件),进程间通信(队列,生产者消费者模型))

    昨日内容回顾 python中启动子进程并发编程并发 :多段程序看起来是同时运行的ftp 网盘不支持并发socketserver 多进程 并发异步 两个进程 分别做不同的事情 创建新进程join :阻塞 ...

  6. day39机器学习

    2 Numpy快速上手 2.1. 什么是Numpy Numpy是Python的一个科学计算的库 主要提供矩阵运算的功能,而矩阵运算在机器学习领域应用非常广泛 Numpy一般与Scipy.matplot ...

  7. day39 css

    一.css的引入方式 在HTML中引入css方式总共有三种: 行内样式 内接样式 外接样式 3.1 链接式 3.1 导入式 css介绍 现在的互联网前端分三层: HTML:超文本标记语言.从语义的角度 ...

  8. saltstack主机管理项目【day39】:主机管理项目开发

    项目目标 salt state.apply -h "ubuntu,centos" -g "ubuntu,centos" -f "ubuntu,cent ...

  9. day39 python 学习 数据库学习 五个约束,数据库设计(一对一,一对多等等)

    删除重复数据:  注意数据库不能又查又删 *******#删除作者为重复数据并保留ID最大的是数据 delete from ren where author in (select * from(sel ...

随机推荐

  1. 初学HTML-3

    标题标签:<h#>...</h#>,从h1到h6,字号由大变小. 段落标签:<p>...</p>,在浏览器中独占一行. 空格:" " ...

  2. 洛谷P3586 [POI2015]LOG(贪心 权值线段树)

    题意 题目链接 Sol 显然整个序列的形态对询问没什么影响 设权值\(>=s\)的有\(k\)个. 我们可以让这些数每次都被选择 那么剩下的数,假设值为\(a_i\)次,则可以\(a_i\)次被 ...

  3. 活字格Web应用平台学习笔记1 - 下载安装,ready go

    今年有一个很重要的职业目标,就是好好学习活字格这个神器,争取在这两个月拿到活字格初级工程师的认证证书.给自己加个油,今天开始好好学习,好好做笔记. 第一步,下载安装 先去活字格官网:http://ww ...

  4. Flutter dart:convert

    引用 mport 'dart:convert'; JSON 解码(JSON String->Object) // NOTE: Be sure to use double quotes (&quo ...

  5. webpack中配置Babel

    Babel是一个javascript编译器,可以将ES6和更新的js语法转换成ES5的,使代码在较老的浏览器里也能正常运行. 一.安装 npm install --save-dev babel-loa ...

  6. JDK动态代理、CGLib动态代理

    JDK动态代理源码 一.public static Object newProxyInstance ——> 调用下面这个方法二.Class<?> cl = getProxyClass ...

  7. CSS 小结笔记之em

    1.为什么使用em em也是css中的一种单位,和px类似.很多人会疑惑为什么有了px之后还要使用em,而且em使用起来相对于px来讲比较麻烦. em主要是应用于弹性布局,下面给出一个小栗子说明em的 ...

  8. 控制台中寄宿WCF服务

    一.首先创建一个类库,用来定义WCF服务 修改服务代码定义,具体代码如下 // 注意: 使用"重构"菜单上的"重命名"命令,可以同时更改代码和配置文件中的接口名 ...

  9. selenium 校验文件下载成功

    转自: http://www.seleniumeasy.com/selenium-tutorials/verify-file-after-downloading-using-webdriver-jav ...

  10. 谨慎使用MyBatis自动生成Where语句

    最近监控到类似这样一个慢查询: select XX_time from XXOrderInfo WHERE ( OrderId is not null and OrderId = N'xxxx') x ...