zoukankan      html  css  js  c++  java
  • MySql单表的curd-03

    数据类型:(了解)
    java mysql
    byte tinyint
    short smallint
    int int(★)
    long bigint
    char/String varchar(★)|char
    varchar:可变长度 mysql的方言 varchar(20): 存放abc 只会占用三个
    char:固定长度 char(20) 存放abc 占用20个
    boolean tinyint|int 代替
    float|double float|double
    注意:
    double(5,2):该小数长度为5个,小数占2个 最大值:999.99


    java.sql.Date date 日期
    java.sql.Time time 时间
    java.sql.Timestamp timestamp(★) 时间戳 若给定值为null,数据库会把当前的系统时间存放到数据库中
    datetime(★) 日期+时间

    java.sql.Clob(长文本) mysql的方言(text)
    java.sql.Blob(二进制) blob
    //////////////////////////////////
    约束:
    作用:
    为了保证数据的有效性和完整性
    mysql中常用的约束:主键约束(primary key) 唯一约束(unique) 非空约束(not null) 外键约束(foreign key)
    主键约束:被修饰过的字段唯一非空
    注意:一张表只能有一个主键,这个主键可以包含多个字段
    方式1:建表的同时添加约束 格式: 字段名称 字段类型 primary key
    方式2:建表的同时在约束区域添加约束
    所有的字段声明完成之后,就是约束区域了
    格式: primary key(字段1,字段2)

    create table pk01(
    id int,
    username varchar(20),
    primary key (id)
    );

    insert into pk01 values(1,'tom');-- 成功
    insert into pk01 values(1,'tom');-- 失败 Duplicate entry '1' for key 'PRIMARY'
    insert into pk01 values(null,'tom');-- 失败 Column 'id' cannot be null

    create table pk01(
    id int primary key,
    username varchar(20),
    primary key (id)
    );-- 错误的 一张表只能有一个主键

    方式3:建表之后,通过修改表结构添加约束
    create table pk02(
    id int,
    username varchar(20)
    );

    alter table pk02 add primary key(字段名1,字段名2..);
    alter table pk02 add primary key(id,username);

    insert into pk02 values(1,'tom');-- 成功
    insert into pk02 values(1,'tomcat');-- 成功
    insert into pk02 values(1,'tomcat');-- 失败

    唯一约束:(了解)
    被修饰过的字段唯一,对null不起作用
    方式1:建表的同时添加约束 格式: 字段名称 字段类型 unique
    create table un(
    id int unique,
    username varchar(20) unique
    );

    insert into un value(10,'tom');-- 成功
    insert into un value(10,'jack');-- 错误 Duplicate entry '10' for key 'id'
    insert into un value(null,'jack');-- 成功
    insert into un value(null,'rose');-- 成功

    方式2:建表的同时在约束区域添加约束
    所有的字段声明完成之后,就是约束区域了
    unique(字段1,字段值2...)
    方式3:建表之后,通过修改表结构添加约束
    alter table 表名 add unique(字段1,字段2);-- 添加的联合唯一
    alter table 表名 add unique(字段1);-- 给一个添加唯一
    alter table 表名 add unique(字段2);-- 给另一个添加唯一

    ////////////////
    create table un01(
    id int,
    username varchar(20)
    );
    alter table un01 add unique(id,username);
    insert into un01 values(1,'tom');-- 成功
    insert into un01 values(1,'jack');-- 成功
    insert into un01 values(1,'tom');-- 失败 Duplicate entry '1-tom' for key 'id'
    /////////////////////
    非空约束(了解)
    特点:被修饰过的字段非空
    方式:
    create table nn(
    id int not null,
    username varchar(20) not null
    );

    insert into nn values(null,'tom');-- 错误的 Column 'id' cannot be null

  • 相关阅读:
    非正式介绍Python(二)
    用js采集网页数据并插入数据库最快的方法
    一张图轻松记住PHP的*类*以及private和protected的区别
    从php到浏览器的缓存机制,不得不看!
    webpack 兼容低版本浏览器,转换ES6 ES7语法
    DEDE织梦 后台特别卡,有时响应超时的解决办法
    vue iview Select bug,在低版本浏览器中报错
    mysql_connect 等待时间长,修改连接地址为127.0.0.1即可
    看完这篇文章才对【GIT】有了大彻大悟的认识
    一次请求对多条数据进行排序的算法(二)
  • 原文地址:https://www.cnblogs.com/Nelsoner/p/6753990.html
Copyright © 2011-2022 走看看