1.数据类型,存储的类型。

整型

TINYINT    有符号-128到127   无符号值:0到255                        1字节
SMALLINT   有符号  -32768到32767  0到65535                         2字节
MEDIUMINT  有符号 -8388608到8388607  无符号 0到16777215             3字节
INT        有符号 -2147483648到2147483647 无符号 0到4294967295      4字节
BIGINT     有符号位 -9223372036854775808到9223373036854775807   无符号 0到18446744073709551615  8字节

选择合适的类型存储数据,有利于数据优化。

浮点型

FLOAT
DOUBLE

日期类型

YEAR                 1
TIME                 3
DATE                 3
DATETIME             8
TIMESTAMP            4

字符型

CHAR                 0-255    字节
VARCHAR              0-65535
TINYTEXT             0-255
MEDIUMTEXT           0-167772150
LONGTEXT             0-4294967295
ENUM('value1','value2'..)              65535

2.数据表,是数据库最重要的组成部分之一

查看选择的数据库

SELECT DATABASE();

创建数据表,UNSGINED无符号

CREATE TABLE IF NOT EXISTS tb1(
    username VARCHAR(20),
    age TINYINT UNSIGNED,
    salary FLOAT(9,2) UNSIGNED
);

查看数据表列表

SHOW TABLES FROM t1;

查看数据表结构

SHOW COLUMNS FROM tb1;

3.INSERT向数据表写入记录

INSERT tb1(username,age,salary) VALUES('张三',25,8000.5);INSERT tb1(username,salary) VALUES('李四',6222.5);

4.记录查找

SELECT * FROM tb1;

*  号是字段的过滤

5.空值与非空

NULL 字段值可以为空

NOT NULL  字段值禁止为空

CREATE TABLE tb2(
  username VARCHAR(20) NOT NULL,
  age TINYINT UNSIGNED NULL
);

为非空,插入的值不能为NULL

6.自动编号,数据唯一性

默认情况下,起始值为1,每次的增量为1.

主键约束,每张数据表只能存在一个主键,保证唯一性,主键自动为NOT NULL

CREATE TABLE tb3(
   id SMALLINT UNSIGNED AUTO_INCREMENT KEY,
   username VARCHAR(30) NOT NULL
);

插入记录后,查看就可以看到id递增

7.唯一约束 UNIQUE KEY

CREATE TABLE tb4(
  id SMALLINT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
  username VARCHAR(20) NOT NULL UNIQUE KEY,
  age TINYINT UNSIGNED
);

当插入同样username自动时

8.默认约束    当插入记录时,如果没有明确为字段赋值,则自动赋予默认值。

demo

CREATE TABLE tb5(
 id SMALLINT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
 username VARCHAR(20) NOT NULL UNIQUE KEY,
 sex ENUM('1','2','3') DEFAULT '3'
);

写入记录,sex没有赋值默认为3

持续更新中。。。

mysql的学习笔记(二)的更多相关文章

  1. MYSQL初级学习笔记二:数据表相关操作及MySQL存储引擎!(视频序号:初级_5,7-22|6)

    知识点三:数据表相关操作(5,7-22) --------------------------------整型--------------------------------- --测试整型 CREA ...

  2. MYSQL进阶学习笔记二:MySQL存储过程和局部变量!(视频序号:进阶_4-6)

    知识点三:MySQL存储过程和局部变量(4,5,6) 存储过程的创建:     创建存储过程的步骤: 首先选中数据库 改变分隔符,不让分号作为执行结束的标记.(通常情况下,改变分隔符命令 DELIMI ...

  3. MySQL数据库学习笔记(十二)----开源工具DbUtils的使用(数据库的增删改查)

    [声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...

  4. python3.4学习笔记(二十五) Python 调用mysql redis实例代码

    python3.4学习笔记(二十五) Python 调用mysql redis实例代码 #coding: utf-8 __author__ = 'zdz8207' #python2.7 import ...

  5. 基于【 MySql 】二 || mysql详细学习笔记

    mysql重点学习笔记 /* Windows服务 */ -- 启动MySQL net start mysql -- 创建Windows服务 sc create mysql binPath= mysql ...

  6. MySQL数据库学习笔记(十)----JDBC事务处理、封装JDBC工具类

    [声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...

  7. MySQL数据库学习笔记(九)----JDBC的ResultSet接口(查询操作)、PreparedStatement接口重构增删改查(含SQL注入的解释)

    [声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...

  8. Django学习笔记二

    Django学习笔记二 模型类,字段,选项,查询,关联,聚合函数,管理器, 一 字段属性和选项 1.1 模型类属性命名限制 1)不能是python的保留关键字. 2)不允许使用连续的下划线,这是由dj ...

  9. python3.4学习笔记(二十四) Python pycharm window安装redis MySQL-python相关方法

    python3.4学习笔记(二十四) Python pycharm window安装redis MySQL-python相关方法window安装redis,下载Redis的压缩包https://git ...

  10. MYSQL数据库学习笔记1

      MYSQL数据库学习笔记1 数据库概念 关系数据库 常见数据库软件 SQL SQL的概念 SQL语言分类 数据库操作 创建数据库 查看数据库的定义 删除数据库 修改数据库 创建表 数据类型 约束 ...

随机推荐

  1. 玩转JPA(一)---异常:Repeated column in mapping for entity/should be mapped with insert="false" update="fal

    最近用JPA遇到这样一个问题:Repeated column in mapping for entity: com.ketayao.security.entity.main.User column: ...

  2. Python实现Telnet自动连接检测密码

    最近在学习Python网络相关编程,这个代码实现了Telnet自动连接检测root用户密码,密码取自密码本,一个一个检测密码是否匹配,直到匹配成功,屏幕输出停止. Python内置了telnetlib ...

  3. kafka 三个配置文件

    kafka的配置分为 broker.producter.consumer三个不同的配置 一 BROKER 的全局配置   最为核心的三个配置 broker.id.log.dir.zookeeper.c ...

  4. Cocos.js

    l SDK下载:http://cn.cocos2d-x.org/download/ l js类库:http://www.cocos2d-x.org/filecenter/jsbuilder/

  5. python+appium 【已解决】真机运行appium报错“WebDriverException: Message: A new session could not be created. (Original error: Command failed: C:\Windows\system32\cmd.exe /s /c.......详见内文

    问题报错提示: selenium.common.exceptions.WebDriverException: Message: A new session could not be created. ...

  6. 怎么动态生成js变量

    动态生成全局变量: //简单的用字符串作为变量名 window['hello'] = "hello, world"; alert(hello);   //批量定义 for(var  ...

  7. Fastjson 1.2.22-24 反序列化漏洞分析

    目录 0x00 废话 0x01 简单介绍 FastJson的简单使用 0x02 原理分析 分析POC 调试分析 0x03 复现过程 0x04 参考文章 0x00 废话 balabala 开始 0x01 ...

  8. 命令行中的 vi 模式

    命令行中修改已经输入的命令比较麻烦,如果你不知道一些快捷键的话,只能使用方向键一个一个字符地移动到目标位置进行修改,对于比较复杂且过长的命令来说,效率不高. 以下信息来自 bash 的 man 页面: ...

  9. html5中的indexDB

    1.关系型数据库和非关系型数据库 一致性: 事务完成时,必须让所有的数据具有一致的状态,例如要写入100个数据,前99个成功了,结果第100个不合法,此时事务会回滚到最初状态.这样保证事务结束和开始时 ...

  10. Webpack系列-第一篇基础杂记

    前言 公司的前端项目基本都是用Webpack来做工程化的,而Webpack虽然只是一个工具,但内部涉及到非常多的知识,之前一直靠CV来解决问题,之知其然不知其所以然,希望这次能整理一下相关的知识点. ...