新霸哥带你轻松玩转Oracle数据库
接触过软件开发的朋友可能都会知道oracle,在开发的过程中,数据存储都可能会用到oracle的,因为oracle具有处理速度快,安全级别特别的高。但是有一个缺点就是比较的贵,只有一个大型的公司才有可能接触到的,看到这里可能很多的朋友一定很想了解oracle吧,下面新霸哥将带你走进oracle的世界。
首先介绍一下Oracle中对于字符串的处理
char varchar varchar2 nvarchar long clob这些都是oracle中常用的字符串类型,在这里用的比较多的就是varchar和varchar2,但是,它们是有区别的。
varchar类型是国际标准组织ANSI制定的字符串类型
varchar2是Oracle公司自定义的字符串类型,目前varchar和varchar2功能一致,Oracle推荐使用varchar2,mysql中没有varchar2只有varchar,varchar2使用时必须指定大小,char不用指定大小,默认为1
char和varchar的区别
新霸哥注意到了char表示固定长度的字符串,varchar表示变长的字符串,c1--char(10)-->为c1开辟10个字符的空间,不够10个,补充空格。c2--varchar(10)-->按照c2实际的长度开辟空间,最大开辟10个长度的空间
中文存储问题
开辟空间大小单位为字节,能存多少字符,和编码有关,GBK:中文占俩个字节,字母和数字占用一个字节。
UTF-8:中文占3个字节,字母和数字占一个字节
Unicode:字母和中文都占俩个字节
使用建议:varchar2定义长度的时候采用最大值:字符数*3
nvarchar类型
nvarchar采用是Unicode编码存储
nvarchar(5):可以存储5个字符(汉子或者字母数字)
字符串处理函数
Oracle提供很多字符串、数值、日期时间等,在这里就不详细的介绍了。如果你想深入的了解,可以和新霸哥交流。
数值操作
oracle中数值类型,利用number定义整数,浮点数。number:既可以存储整数也可以存储小数,number(p):表示p位的整数,number(p,s):表示浮点数,s表示小数位数,p表示有效位数
--s>0:对小数点右侧做多保留s位小数
--s=0:对小数点四舍五入截掉保留整数
--s<0:对小数点左侧s位四舍五入清0
当p<s的时候,是一个小于1的小数,小数点保留s位,将小数点右侧s-p位清0 为0.0XX

日期和时间的操作
sysdate:Oracle服务器当前系统时间,systimestamp:返回oracle服务器当前系统时间是一个timestamp类型。将字符串站换成date,to_date(s.format):将s字符串以format格式转换成date类型。 Oracle默认的格式为:DD-MM-RR,英文环境:'01-JAN-90',中文环境:'01-1月-90'
日期转换成字符串
to_char(date,format):将date转换成format格式的字符串显示出来。 to_timestamp和to_date相似,可以将一个字符串转换成timestamp()类型
其他日期函数
last_day(date):返回当前时间月份的最后一天,next_day(date,星期几):从当date时间开始计算,下一个星期几的日期(离date最近的日期),months_between(date1,date2):计算date1-date2相差多少个月。extract:获取指定的年,月,日等信息。
空值操作
null:各种类型的字符串都可以为null,这个也是很重要的,在开发中会经常遇到的。
1》插入式写入null
2》null做条件查询
好了,新霸哥今天就介绍到这里了,更多的关于oracle的一些深入的应用,欢迎和新霸哥交流。
新霸哥带你轻松玩转Oracle数据库的更多相关文章
- 新霸哥带你进入java的世界
新霸哥从近期大家的留言中注意到了大家对基础知识比较重视,很多的朋友希望多讲一些入门的知识,为了满足广大开发爱好者的需求,新霸哥决定从最基础的做起,一点一点的帮助大家一起走进云计算的世界.下面新霸哥首先 ...
- 架构篇 | 带你轻松玩转 LAMP 网站架构平台(一)
作者 | JackTian 微信公众号 | 杰哥的IT之旅(ID:Jake_Internet) 转载请联系授权(微信ID:Hc220066)备注:来自博客园 1.什么是 LAMP 架构? LAMP 架 ...
- CAP带你轻松玩转Asp.Net Core消息队列
CAP是什么? CAP是由我们园子里的杨晓东大神开发出来的一套分布式事务的决绝方案,是.Net Core Community中的第一个千星项目(目前已经1656 Star),具有轻量级.易使用.高性能 ...
- CAP带你轻松玩转ASP.NETCore消息队列
CAP是什么? CAP是由我们园子里的杨晓东大神开发出来的一套分布式事务的决绝方案,是.Net Core Community中的第一个千星项目(目前已经1656 Start),具有轻量级.易使用.高性 ...
- 带你轻松玩转Git--图解三区结构
在上篇文章的结尾我们提到了Git 的三区结构,在版本控制体系中有这样两种体系结构,一种是两区结构一种是三区结构.接下来我们通过对Git三区的结构学习来帮助我们更好的去理解并运用Git. 两区结构是其他 ...
- 带你轻松玩转Git--瞬间创建本地仓库
在上一篇文章中我们对版本控制有了一个比较宏观的了解,同时也能够看到Git 所处在的历史地位.并且对版本控制系统的体系进行了一个宏观的对比,貌似让读者看起来挺复杂的样子. 笔者将会尽可能的简单向大家分享 ...
- Oracle数据库使用存储过程实现分页
注:本示例来源于韩顺平[10天玩转oracle数据库]视频教程 1.创建包同时创建游标 create or replace package pagingPackage is type paging_c ...
- 完整版的CAD技巧!3天轻松玩转CAD,零基础也能学会
最近有很多小伙伴反应,CAD图纸学起来有点小困难,也许你还没能掌握技巧,CAD大神带你3天轻松玩转CAD,零基础也能快速学会. 一.看懂图纸是关键 CAD制图首先得让自己知道要绘制什么,如果心中对图纸 ...
- PowerDesigner生成Oracle数据库时,表名会带引号问题
使用PowerDesigner生成数据库建表SQL脚本时,尤其是Oracle数据库时,表名一般会带引号.其实加引号是PL/SQL的规范,数据库会严格按照""中的名称建表,如果没有& ...
随机推荐
- ES6学习一--ES5
JSON对象方法 1.将JSON字符串转换成js对象(IE7及以下不支持)(IE7及以下兼容需其他手段) JSON.parse() 2.将js对象转成JSON字符串 JSON.stringify() ...
- java代码如何在没有安装JDK的Windows下运行
java代码如何在没有安装JDK的Windows下运行? 对于Java桌面应用来说,比较烦琐的就是安装部署问题,如:客户端是否安装有jre.jre版本.jre在哪里下载.如何用jre启动Java应用等 ...
- 定时刷新指定div层
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/ ...
- docker —宝塔面板
下载个单独的系统镜像 [root@git opt]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE docker.io/nginx-tomcat ...
- Redis数据类型,面试相关
1.Redis最为常用的数据类型主要有以下几种 String Hash List (消息队列) Set (可以用于存储不重复的列表数据) Sorted Set (有序不重复数的列表数据) Pub/Su ...
- DP练习题——洛谷P1970花匠
目录 题目描述: 输入输出格式: 输入格式: 输出格式: 输入输出样例: 输入样例: 输出样例: 题目分析: 解法一: 解法二: 结语: 题目描述: 洛谷\(P1970\) 花匠栋栋种了一排花,每株花 ...
- luoguP1502过河题解
日常吐(fei)嘈(hua) 这道题作为最近卡了我3天的dp题(最后还是在题解的帮助下冥思苦想才过掉的题),窝觉得此题肥肠之脑洞,写此博客纪念 题解 过河 先来日常手玩样例: 咦感觉怎么手玩答案都像是 ...
- android中builder模式的使用
变种的Builder模式的自动化生产实现: AS安装插件 Innerbuilde 新建User类 public class User { private final String name; //必 ...
- 代码实现:判断101-200之间有多少个素数(质数),并输出所有素数。 程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是素数,反之是素数。
package com.loaderman.Coding; /* 判断101-200之间有多少个素数(质数),并输出所有素数. 程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能 ...
- jenkins docker 发布
分享下怎么使用jenkins 发布 docker 首先准备docker的相关部分 docker tomcat基础镜像,这边使用centos7做系统,dockerfile如下: #tomcat基础镜 ...