首页 > 数据库 >mysql索引--普通索引,唯一索引,主键索引,参照完整性约束,数据完整性约束

mysql索引--普通索引,唯一索引,主键索引,参照完整性约束,数据完整性约束

时间:2023-04-21 11:14:24浏览次数:51  
标签:数据完整性 index -- create 约束 索引 ind table

-- 方法1:create index
-- 对employee表的员工部门号列创建普通索引depart_ind
-- create index depart_ind on employees(员工部门号);

-- 对employee表的姓名和地址列创建复合索引ad_ind;
-- create index ad_ind on employees(姓名,地址);

-- 对departments表的部门名称列创建唯一索引un_ind;
-- create unique index un_ind on departments(部门名称);

-- 方法2:alter table
-- 对employee表的出生日期列创建唯一索引date_ind ,姓名和性别列添加复合索引na_ind(用alter table命令完成)
-- alter table employees add unique data_ind(出生日期),add index na_ind(姓名,性别);

-- 练习:对departments表的部门编号列创建唯一索引key_ind;(用alter table)
-- alter table departments add unique key_ind(部门编号);

-- 方法3:创建表的同时创建索引
-- 创建表cpk(产品编号,产品名称,单价,库存量),并对产品编号创建主键,
-- 在库存量和单价列上创建复合索引cpk_fh
-- create table if not exists cpk(
-- 产品编号 varchar(5) primary key,产品名称 varchar(20),单价 float(4),库存量 int(4),
-- index cpk_fh(单价,库存量));

-- create table if not exists cpk2(
-- 产品编号 varchar(5),产品名称 varchar(20),单价 float(4),库存量 int(4),
-- index cpk_fh(单价,库存量),primary key(产品编号));

-- 参照完整性约束
-- create table if not exists jj(
-- employeeID char(6),je float(4),
-- foreign key(employeeID) references employees(员工编号)
-- on delete cascade on update cascade) engine=InnoDB;


-- insert into jj values("020018",78.01),("102208",123),("102201",456);
-- select * from jj;

-- delete from employees where 员工编号="102208";


-- 数据完整性
-- 创建雇员表emp,只考虑工号和性别两列,性别只能包含男或女
create table if not exists emp (工号 char(5),性别 char(2),check(性别="男" or 性别="女"));

insert into emp values("001","男"),("002","女");

-- 练习:创建表emp_3,有工号,工资和扣款3列,要求工资必须大于扣款。
-- 其中:工号 char(6) 工资 float(4),扣款 float(4)
create table if not exists emp3 (工号 char(5),工资 float(4),扣款 float(4)
,check(工资>扣款));

insert into emp3 values("001",1000,500),("002",2000,1500);

 

 日行一善--今天给我的老同学讲解excel图表知识

日进一步--昨天课间开始看书了。

标签:数据完整性,index,--,create,约束,索引,ind,table
From: https://www.cnblogs.com/gdsmdsfy/p/17339649.html

相关文章

  • js的forEach()方法,获取索引值index
    forEach()方法用于调用数组的每个元素,并将元素传递给回调函数。用法:1、forEach有3个参数:第一个参数可以获取循环一遍的值;第二个参数可以获取当前元素的索引值(下标);第三个参数可以获取当前数组;例:vararr=[1,2,3,4]arr.forEach(function(val,index,array){consol......
  • sql server 正确的建立索引
    首先,我们需要明白几个索引的要点:索引之后,按索引字段重复最少的来排序,会达到最优的效果。以我们的表来说,如果建立了No的聚集索引,把No放在where子句的第一位是最佳的,其次是Id,然后是MgrObjId,最后是时间,时间索引如果表是一个小时的,最好不要用where子句的顺序决定了查询分析器是否使......
  • 3.索引维护
    一、索引使用情况1.查找缺失索引useDB_nameSELECTA.USER_SEEKS查找次数,A.USER_SCANS扫描次数,ROUND(A.AVG_TOTAL_USER_COST,2)减少的用户查询的平均成本,A.AVG_USER_IMPACT可能获得的平均百分比收益,ROUND((A.USER_SEEKS+A.USER_SCANS)*A.AVG_TOTAL_USER_COST......
  • lucene入门实例三 (index索引)
    copy《luceneinaction》的一个索引的例子:  packagecom.s.lucene.LIA.index;importjava.io.IOException;importjunit.framework.TestCase;importorg.apache.lucene.analysis.WhitespaceAnalyzer;importorg.apache.lucene.document.Document;importorg.apache.luce......
  • lucene入门实例一(写索引)
    copy一个luceneinaction的入门实例代码:   importjava.io.File;importjava.io.FileFilter;importjava.io.FileReader;importjava.io.IOException;importorg.apache.lucene.analysis.standard.StandardAnalyzer;importorg.apache.lucene.document.Document;impor......
  • jdbc 报错 - 索引中丢失 IN 或 OUT 参数:
    jdbc报错-索引中丢失 IN或OUT参数:通常产生这种异常,是因为语句参数类型不一致所导致,如preparedStatement中的参数本应该是int/integer类型,但是设置参数是setString(1,String.valueof(xxx));或是现在流行的hibernate和ibatis的参数类型配置有问题,Integer配置为varchar2了。......
  • 5 04 | 深入浅出索引(上)
    提到数据库索引,我想你并不陌生,在日常工作中会经常接触到。比如某一个SQL查询比较慢,分析完原因之后,你可能就会说“给某个字段加个索引吧”之类的解决方案。但到底什么是索引,索引又是如何工作的呢?今天就让我们一起来聊聊这个话题吧。数据库索引的内容比较多,我分成了上下两篇文章。......
  • 深度学习--PyTorch定义Tensor以及索引和切片
    深度学习--PyTorch定义Tensor一、创建Tensor1.1未初始化的方法​ 这些方法只是开辟了空间,所附的初始值(非常大,非常小,0),后面还需要我们进行数据的存入。torch.empty():返回一个没有初始化的Tensor,默认是FloatTensor类型。#torch.empty(d1,d2,d3)函数输入的是shapetorch.empty......
  • 6 05 | 深入浅出索引(下)
    在上一篇文章中,我和你介绍了InnoDB索引的数据结构模型,今天我们再继续聊聊跟MySQL索引有关的概念。在开始这篇文章之前,我们先来看一下这个问题:在下面这个表T中,如果我执行select*fromTwherekbetween3and5,需要执行几次树的搜索操作,会扫描多少行?下面是这个表的初始化语句......
  • linq的妙用 分组 交换索引
    //////Splitsacollectionofobjectsintonpageswithan(forexample,ifIhavealistof45shoesandsay'shoes.Split(5)'Iwillnowhave4pagesof10shoesand1pageof5shoes.//////Thetypeofobjectthecollectionshouldcontain.......