ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

Mysql的学习3___数据的管理

2019-07-07 16:02:15  阅读:249  来源: 互联网

标签:COMMENT DEFAULT gradeid 外键 学习 Mysql ___ NULL 主键


1.主键:

每个表中最多只能有1个主键,且主键的值不能重复,通过主键可以唯一的确定一条记录。当我们在创建表的时候就声明了主键的话,Mysql就会对我们插入的每一条记录进行检验,若有主键值相同时就会报错。另外主键是默认NotNull的。

声明主键的两种方式:

主键只是单个列时(比如设置学生的学号为主键): 

        Stu_id   int( 5 )  primary key;   

主键是多个列时  :

        primary key(列名1,列名2。。。);

主键和唯一性约束的区别:

都保证了列或列组合的唯一性;但是主键在一个表中只能有一个,唯一性约束可以存在多个;主键不允许为空,唯一性约束可以为空的。

 

2.外键:

定义:在两个关系中存在公共的若干个字段,且在一个关系中这些公共字段是主键就称该表为主表,另一个关系就称为从表并称这些公共字段为外键。外键主要目的是将两张表形成关联,即就是可以通过从表的外键来引用从表中其他列的值或者空值。

定义的语法格式:

constraint   [ 外键的名称 ]   foreign  key (列1,列2。。。) refferences  父表名(父列1,父列2。。。)

(建立外键时:先创建主表,再是从表     删除外键时:先删除从表,再是主表)

#创建外键方式:在创建从表的同时创建外键
(grade是主表,student是从表)
CREATE TABLE `grade` (   
  `gradeid` INT(10) NOT NULL AUTO_INCREMENT COMMENT '年级ID',
  `gradename` VARCHAR(50) NOT NULL COMMENT '年级名称',
  PRIMARY KEY (`gradeid`)
) ENGINE=INNODB DEFAULT CHARSET=utf8;


CREATE TABLE `student` (
  `studentno` INT(4) NOT NULL COMMENT '学号',
  `studentname` VARCHAR(20) NOT NULL DEFAULT '匿名' COMMENT '姓名',
  `sex` TINYINT(1) DEFAULT '1' COMMENT '性别',
  `gradeid` INT(10) DEFAULT NULL COMMENT '年级',
  `phoneNum` VARCHAR(50) NOT NULL COMMENT '手机',
  `address` VARCHAR(255) DEFAULT NULL COMMENT '地址',
  `borndate` DATETIME DEFAULT NULL COMMENT '生日',
  `email` VARCHAR(50) DEFAULT NULL COMMENT '邮箱',
  `idCard` VARCHAR(18) DEFAULT NULL COMMENT '身份证号',
  PRIMARY KEY (`studentno`),
  KEY `FK_gradeid` (`gradeid`),
  CONSTRAINT `FK_gradeid` FOREIGN KEY (`gradeid`) REFERENCES `grade` (`gradeid`)
) ENGINE=INNODB DEFAULT CHARSET=utf8;

3.数据的管理:

数据库操作语言:用于操作数据库对象中所包含的数据。

INSERT:添加数据语句

INSERT INTO `school`.`grade`(`GradeID`,`GradeName`) VALUE ('7','大六');     (注意数据库名,表名,字段名用 ` ` 括起来,普通的字符串用 ' '括起来)

UPDATE:更新数据语句

  • 语法 : 
    UPDATE 表名 SET column_name=value [,column_name2=value2,...] [WHERE condition];

 注意 : 

  • column_name 为要更改的数据列
  • value 为修改后的数据 , 可以为变量 , 具体指 , 表达式或者嵌套的SELECT结果
  • condition 为筛选条件 , 如不指定则修改该表的所有列数据

DELETE:删除数据语句

 

 

标签:COMMENT,DEFAULT,gradeid,外键,学习,Mysql,___,NULL,主键
来源: https://www.cnblogs.com/xbfchder/p/11146474.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有