文档章节

数据库学习总结-1

wow863597
 wow863597
发布于 2016/05/01 19:35
字数 1373
阅读 8
收藏 0
1.数据库介绍

关系型数据库:由数据,数据之间关系,数据约束组成的数据模型。方便数据的管理:通常是 存储,查询 统计。关系型数据库中数据是被存放与表中,以表格形式体现。目前使用SQL(结构化查询语言) 在关系型数据库中进行信息的查询,SQL 有以下几种:

①数据定义语言:DDL 用于建立、修改,删除数据库对象,包括CREATE 、 ALTER、 DROP 。 举例:

--创建学生表:包含 姓名 年龄 班级 性别 
CREATE TABLE STUDENTS ( NAME VARCHAR2(10 BYTE ), AGE NUMBER(2),CLASSNAME CHAR(4),GENDER CHAR(2))
--删除表 
DROP TABLE STUDENT 
--删除某一列 
ALTER TABLE STUDENT (AGE) 
-- 向表中添加一列 :ALTER TABLE STUDENT ADD ( AGE CHAR(2) )
--修改一列:ALTER TABLE STUDENT MODIFY (AGE CHAR(2) NOT NULL)
--修改表名字 : RENAME  STUDENT TO STUDENTS

②数据操作语言:DML   用于改变数据库数据,包括  插入数据 INSERT  、更新数据 UPDATE 、删除数据 DELETE 。 执行完后需要提交 COMMIT  才能在数据库中真正完成操作。 或者 回滚 ROLLBACK 取消操作。举例:

--向表中添加数据 
INSERT  INTO STUDENT ( NAME , AGE ,GENDER ) VALUES ( TOM ,18,F)  
COMMIT

③事物控制语言:TCL  控制数据库数据 数据操作语言 ,包括 提交 COMMIT  回滚 ROLLBACK  保存点 SAVEPOINT  可以设置保存点  退回到保存点   。举例:

--向表中添加数据 不提交 回滚 
INSERT  INTO STUDENT ( NAME , AGE ,GENDER ) VALUES ( JACK ,20,F)  
ROLLBACK  
--设置保存点
SAVEPOINT A 
--回到保存点
ROLLBACK A

④数据查询语言:TQL:  用于查询 SELECT  举例:

--查询全表数据
SELECT * FROM  STUDENT

⑤数据控制语言: DCL : 用于执行权限的 授予 和回收操作 、创建用户等 ,包括授予 GRENT 收回 REVOKE   创建用户 CREAT USER  。 语句自动提交 

定义数据表时常用数据类型 :

1。数字  number( P,S )  

其中 P 表示 数字总共 有多少位  ,S 表示 P中的小数是多少位 

数字相关 函数  ROUND (四舍五入)  ,TRUNC (截取) ,MOD (取余)  , CEIL (向上取整 ) ,FLOOR (向下取整)   

ROUND (55.234, 2)  取两位小数 四舍五入  结果 55.23   ROUND (35.789,1 )  取一位小数 结果 35.8  

TRUNC (33.674,2) 截取 使数据  剩余两位小数 结果 33.67  TRUNC (35.789, 1) 结果 35.7 

MOD(20, 3) 结果2   。 MOD(100,3) 结果 1 。   

CEIL (33.674) 结果 34   FLOOR( 33.674) 结果 33    

2. 日期 DATE    日期   占据 7个内存字节  第一字节 代表世纪   之后分别是 年月日 时分秒   显示 年月日 

timestamp 日期 包含 占据7个字节时候 包括  世纪年月日 时分秒   显示年月日时分秒  

                               占据 11个字节时候 包括 世纪 年月日 时分秒  毫秒 微秒 纳秒  

日期相关 函数 :

① 显示系统时间   SYSDATE  日期 年与日      SYSTIMESTAMP 精确到纳秒

SELECT SYSDATE FROM DUAL  
SELECT SYSTMIESTAMP FROM  DUAL

 ②  改变时间格式  TO_DATE( 需转化的字符串 ,目标格式 ,日期语言 )   , TO_CHAR ( 日期 , 日期格式 ,日期语言 ) 

--查询2012 年之后入职的员工 名字 
SELECT NAME FROM  EMP WHERE HIREDATE > TO_DATE('2012-1-1','YYYY-MM-DD') 
--将职员入职日期 以 固定格式输出 
SELECT NAME ,TO_CHAR(HIREDATE, 'YYYY-MM-DD') FROM EMP

③ 返回日期所在YUE的最后一天  LAST_DAY ( DATE)  

SELECT LAST_DAY(SYSDATE) FROM DUAL

ADD_MONTHS ( date,i) 在date 基础上增加   I个月份 

SELECT ADD_MONTHS(SYSDATE,3) FROM DUAL

⑤ 两个月份中间间隔多少月份   MONTHS_BENTWEEN(DATE1  ,DATE2 )  

SELECT MONTHS_BENTWEEN(HIREDATE, SYSDATE ) FROM EMP

⑥  返回日期列表中的最小值    LEAST ( DATE1, DATE2 ,DATE 3 ...)  

返回日期列表中的最DA值  GREATEST ( DATE1, DATE2 ,DATE 3 ...)  

返回date日期数据的下一个周几,周几是由参数char来决定的  NEXT_DAY( DATE , CHAR)。 

SELECT NEXT_DAY(SYSDATE, 4) next_wedn FROM DUAL

EXTRACT(date FROM datetime):从参数datetime中提取参数date指定的数据,比如提取年、月、日。 

SELECT EXTRACT(HOUR FROM TIMESTAMP '2008-10-10 10:10:10') FROM DUAL

3. 字符 VARCHAR ()   VARCHAR2()   CHAR  () LONG    CLOB 

 CHAR  ()固定字符 括号中填写  字节位数   最大2000字节   写多少就是多少空间 

VARCHAR2 (N) 可变字符 最大4000字节    N以下写多少都是占N个空间  

LONG 加长字符 ,最多 2G 字节 

CLOB  超长 字符  最多 4G 字节 

字符相关函数   

①连接 CONCAT  ,||  .         例 : 字符A || 字符 B    例: CONCAT(A ,B)

② 字符长度 LENGTH( 字符)  

③改变大小写 

UPPER(char)用于将字符转换为大写形式

LOWER(char)用于将字符转换为小写形式

INITCAP(char)用于将字符串中每个单词的首字符大写,其它字符小写,单词之间用空格和非字母字符分隔

④去除空白 

TRIM(c2 FROM c1) 表示从c1的前后截去c2

LTRIM(c1[, c2]) 表示从c1的左边(Left)截去c2

RTRIM(c1[, c2]) 表示从c1的右边(Right)截去c2

⑤ 补位 

LPAD(char1, n, char2) 左补位函数

RPAD(char1, n, char2) 右补位函数

⑥截取字符串 SUBSTR (字符串,number1 ,number2 ),从number1 位置截取到 number2 位置  假如 写一个就是截取到末尾 ,写大于字符串的也是 到末尾,数据库中字符串从1 开始计数 

用来返回在一个字符串中子串的位置   INSTR( CHAR1 ,CHAR2  )  

返回子串char2在源字符串char1中的位置, 从n的位置开始搜索,没有指定n,从第1个字符开始搜索, m用于指定子串的第m次出现次数,如果不指定取值1 ,如果在char1中没有找到子串char2 ,返回0.



© 著作权归作者所有

wow863597
粉丝 3
博文 38
码字总数 23132
作品 0
济南
程序员
私信 提问
从Access数据库零基础入门到中文编程软件开发第1部

Access是office办公套件中的一个极为重要的组成部分,现在它已经成为最流行的桌面数据库管理系统。本课程为Access数据库知识系列课程第1部(敬请关注后续课程),课程目标:结合简单实例讲解,...

wx597be58736554
02/26
0
0
Sql Server2005 Transact-SQL 新兵器学习总结之-DDL触发器

1.简介: Sql Server2005新增加了DDL触发器。 与DML触发器不同的是,它们不会为响应针对表或视图的UPDATE、INSERT或DELETE语句而激发。 相反,它们将为了响应各种数据定义语言(DDL)事件而激发...

范大脚脚
2017/12/14
0
0
学习东西总结:

一.JAVA 基础 1、JAVA并发编程 2.JAVA NIO系列 3.JVM深入了解 4.JAVA性能优化相关研究 5.JAVA7,8新特性 二、数据库 1.数据库优化研究 2.MYSQL高可用性研究 3.MYSQL源码研究 三、网络 1.HTTP...

QH_C
2016/03/25
5
0
《牛腩新闻发布系统》—真、假分页

【前沿】 小编在学习的过程中,学习的过程中听到视频中老师简单介绍了一下真、假分页的区别,下面小编就这个知识点进行一下总结。 【内容】 真分页:由程序控制,每一次只返回一页大小的数据...

wxb141001yxx
2018/03/19
0
0
MySQL学习总结----备份+导入

MySQL学习总结----备份+导入 ================================================================================ 一、MySQL数据库备份方法 ============================================......

doublelinux
2017/10/16
0
0

没有更多内容

加载失败,请刷新页面

加载更多

linux下ctrl+c中止不了

有一台centos7的服务器,ctrl+c无效,并且tail -f也无效,只能关掉终端或者crtl+z放入后台再删掉,但是ping的时候使用ctrl+c是有效果的。 出现这种情况的原因可能是因为有人要使用ruby安装r...

gaolongquan
8分钟前
0
0
Android三年工作面经

工作三年出来看看新的机会,依次面试过如下公司: 小米(北京) iHandy(北京) 涂鸦智能(杭州) 微软(北京) 宜信(北京) 蚂蚁金服(杭州) 瓜子二手车(北京) 高德(北京) 基本上投递的简历都得到了面...

JerryLin123
11分钟前
0
0
开发函数计算的正确姿势——tensorflow serving

前言 首先介绍下在本文出现的几个比较重要的概念: 函数计算(Function Compute): 函数计算是一个事件驱动的服务,通过函数计算,用户无需管理服务器等运行情况,只需编写代码并上传。函数计...

阿里云云栖社区
15分钟前
4
0
社区角色(Kubernetes社区Maintainer是什么角色?)

社区成员按照角色,分为member、reviewer、approver、subproject owner。 下面我们介绍一下每个角色的职责和要求。 member reviewer approver subproject owner...

恋恋美食
32分钟前
0
0
【JavaScript】callee 与 caller

callee callee是函数参数arguments对象的一个属性,它指向参数arguments对象所在的函数自身。 function foo (x) {console.log(arguments.callee);return x;}foo(); 从控制台中可以看...

小草先森
35分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部