数据库部分刷题知识总结(二)

房东的猫 提交于 2020-08-06 23:33:57
  1. 在关系型数据库中,有两个不同的事务同时操作数据库中同一表的同一行,不会引起冲突的是两个DELETE。其中一个SELECT,其中两个都是UPDATE或其中一个是DELETE,另一个是UPDATE都会冲突。
  2. MySQL实现了四种通信协议
    1)TCP/IP协议,通常我们通过来连接MySQL,各种主要编程语言都是根据这个协议实现了连接模块。
    2)Unix Socket协议,这个通常我们登入MySQL服务器中使用这个协议,因为要使用这个协议连接MySQL需要一个物理文件,文件的存放位置在配置文件中有定义,值得一提的是,这是所有协议中最高效的一个。
    3)Share Memory协议(共享内存),这个协议一般人不知道,肯定也没用过,因为这个只有windows可以使用,使用这个协议需要在配置文件中在启动的时候使用–shared-memory参数,注意的是,使用此协议,一个host上只能有一个server,所以这个东西一般没啥用的,除非你怀疑其他协议不能正常工作,实际上微软的SQL Sever也支持这个协议。
    4)Named Pipes协议(命名管道),这个协议也是只有windows才可以用,同shared memory一样,使用此协议,一个host上依然只能有一个server,即使是使用不同的端口也不行,Named Pipes 是为局域网而开发的协议。内存的一部分被某个进程用来向另一个进程传递信息,因此一个进程的输出就是另一个进程的输入。第二个进程可以是本地的(与第一个进程位于同一台计算机上),也可以是远程的(位于联网的计算机上)。正因为如此,假如你的环境中没有或者禁用TCP/IP环境,而且是windows服务器,那么好歹你的数据库还能工作。使用这个协议需要在启动的时候添加–enable-named-pipe选项。



  3. SQL约束主要有一下几种:
    NOT NULL : 用于控制字段的内容一定不能为空(NULL)。
    UNIQUE : 控制字段内容不能重复,一个表允许有多个 Unique 约束。
    PRIMARY KEY: 也是用于控制字段内容不能重复,但它在一个表只允许出现一个。
    FOREIGN KEY: FOREIGN KEY 约束用于预防破坏表之间连接的动作,FOREIGN KEY 约束也能防止非法数据插入外键列,因为它必须是它指向的那个表中的值之一。
    CHECK: 用于控制字段的值范围。
    DEFAULT: 用于设置新记录的默认值。





  4. 在关系模型中,实现“表示了两个关系之间的相关联系”的约束是通过:外键。
    超键(super key):在关系中能唯一标识元组的属性集称为关系模式的超键;
    候选键(candidate key):不含有多余属性的超键称为候选键 ;
    主键(primary key):用户选作元组标识的一个候选键程序主键 ;


标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!