• mysql二--增删改查


      我们学的mysql,其实是学的sql语言,sql语言全称:结构化查询语言

    一、sql语言分类

      sql语言分类:

        DQL:数据查询语言 (select)

        DML:数据操作语言(delete、update、insert)

        DDL:数据定义语言(drop、create等)

        TPL:事物处理语言(保证被DML影响的行能够及时得到更新)

      详细介绍:

        使用的数据库模型:

         

        添加的数据:

         

        1、DQL:数据查询语言

           select * from student;   //查询全部

           select * from student where id=2;  //根据条件查询,where后写查询条件

        2、DML:数据操作语言

           ①添加 insert

            格式:insert into 表名 [(字段1,字段2.....)]  values (值1,值2.....),(值1,值2.....);

             第一种:insert into student(name,address)  values  ("陈平安","浩然天下"),("阿良","浩然天下");

             第二种:insert into student values(null,"陈平安","浩然天下"),(null,"阿良","浩然天下");

            不同之处:第一种声明了表中的字段,这样添加行数据时,不用每个字段都写,只写前边声明的就行。第二种没有声明字             段,所以每个字段都要写对应的值,id在创建表时设定为主键自增,就设为null就好,后边在介绍。

             ②更新  update

            格式:update 表名 set 字段1=值1,字段2=值2  where  字段=值;

              uddate student set name="猛" where name="阿良";

              ③删除 delete

            格式:delete from student where 字段=值;

              delete from student where id=4;

    二、数据完整性

      数据完整性包括:实体完整性、域完整性、引用完整性、自定义完整性(mysql中没有定义这个)

      1、实体完整性

        作用:保证数据表中行数据的唯一性

        实现:给数据库表添加一个主键。

        要求:主键要求不能为null,不能重复

        主键是什么?

          主键是表中的一列,其值能保证行数据的唯一性。在创建表或更改表时,可以通过primary key来创建主键。一个表中只能使      用primary key一次,并且使用primary key修饰的列不接受空值。

        主键的作用:

          ①确保实体的数据完整性

          ②加快了数据的的操作速度

          ③当向表中添加新数据时,数据库会对比添加的主键值和表中存在的主键值是否重复

          ④表中数据按照主键值来确定显示顺序,如果没有主键值,则按添加的先后顺序来确定显示顺序。

        主键的特点:

          ①不为null

          ②不重复

          ③无意义

        自增控制  :auto_increment            不为空:not null        不重复:unique

       问:既然primary key 和unique not null组合都是不为空,不重复,那是否可以相互替换。

        答:不能。使用primary key后,会生成索引文件,提高数据库表的操作速度。而unique not null不行。

          注:不是因为有索引文件,操作数据库表的速度变快,而是因为索引算法。数字使用b+tree,汉字使用hash值

       创建表中声明主键:

          create table student(id int(20) primary key auto_increment);

      2、域完整性

        作用:保证输入的值在设定的范围内,比如性别为男女,年龄设置为不超过40岁。

          设置默认值: default

          非空约束:not null

        创建表中给列值设置默认值,并不为空:

          create table student(id int(20) primary key auto_increment,sex varchar(20) not null default "男");

       3、引用完整性  外键

        foreign key(外键)用来保证表与表之间数据的完整性,是建立在主键基础之上的。体现了表与表之间的关联性。要现有主键数据,  才能添加外键数据。外键要和主键数据类型保持一致。

        如果一个实体中的某个字段指向另一个实体的主键,那个字段就叫外键。

        如果一个表中的某个列指向另一个表中的主键,这个字段就叫外键列。

        被指向的实体的叫做父实体(父表),或主实体(主表)。

        负责指向的实体叫做子实体(子表),或从实体(从表)。

        mysql系统禁止用户做以下操作:

          ①在主表中没有关联的记录时,往从表中添加数据。

          ②将主表中的值导致从表中的值孤立

             ③将主表中的记录删除,但是从表中仍有与该记录相关联的数据。

        实例表:

  • 相关阅读:
    MY_HOME
    跨站请求伪造CSRF防护方法
    python中的函数参数
    python 中的闭包
    append追加元素绑定事件无效的解决办法
    webservice练习(cxf,axis,httpclient)
    hibernate5 mysql写入中文乱码
    今天面试中遇到的几个sql查询问题
    Eclipse运行maven项目是出现-Dmaven.multiModuleProjectDirectory system property is not set. Check $M2_HOME environment variable and mvn script match.这种问题解决办法
    模拟博客园登录java实现
  • 原文地址:https://www.cnblogs.com/fbbg/p/14169666.html
Copyright © 2020-2023  润新知