Sql学习笔记1——数据类型和基本模式定义

*所学课本为数据库系统概念(第6版)由耶鲁大学、利哈伊大学和印度理工学院的几个外国人编的。

1、SQL查询语言概览:数据定义语言(DDL)、数据操纵语言(DML)、完整性、视图定义、事务控制、嵌入式SQL和动态SQL、授权。

2、 数据定义
2.1 基本类型:
char(n)       固定长度字符串
 varchar(n)      可变长度字符串,用户指定最长长度n。
int  smallint  bigint 和tinyint  区别如下

bigint

从 -2^63 (-9223372036854775808) 到 2^63-1 (9223372036854775807) 的整型数据(所有数字)。存储大小为 8 个字节。

int

从 -2^31 (-2,147,483,648) 到 2^31 - 1 (2,147,483,647) 的整型数据(所有数字)。存储大小为 4 个字节。int 的 SQL-92 同义字为 integer

smallint

从 -2^15 (-32,768) 到 2^15 - 1 (32,767) 的整型数据。存储大小为 2 个字节。

tinyint

从 0 到 255 的整型数据。存储大小为 1 字节。

numeric(p,d)  定点数,表示有p位数(加上一个符号位),d表示精度。例如,numeric(3,1)可以精确存储44.5而不能精确存储444.5
real,double precision  浮点数与双精度数,精度与机器有关。
float(n)  精度 至少为n位的浮点数。
2.2 基本模式定义
  • 建表:

    create table instructor
      (id varchar(7),
      name  varchar(20) not null,  /*不允许空值*/
      dept_name  varchar(20),
      salary  numeric(8,2),
      primary key(id),    /*主码(或称主键),其属性必须非空且唯一,即实体完整性*/
      foreign key(dept_name) references department);  /*外码,取值必须对应于外关系department中在主码属性上的取值,即参照完整性)*/
  • 插入数据:

  insert into instructor

    values(10211,‘Mike’,‘biology’,66000);  

  • 增加属性:alter table r add ad;    
  • 删除属性: alter table r drop ad;
  • 删除元组:delete from instructor;   /*删除instructor关系中的所有元组*/
  • 删除关系:drop table instructor;

两个删除操作的区别:对以上删除操作,drop比delete更强,前者保留关系instructor,但是删除所有元组。后者不仅删除元组,还删除关系instructor的模式。

*关于插入与删除操作,还有很多其他特性,后面有更详尽的讲解。

本笔记采用的例子为大学数据库的模式。总共有11个表,包括:classroom,department,course,instructor,section,teaches,student,takes,advisor,time_slot和prereq。

 
 
  
 

转载于:https://www.cnblogs.com/Dezhong-chen/p/4438723.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值