• 新霸哥带你轻松玩转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的一些深入的应用,欢迎和新霸哥交流。

  • 相关阅读:
    android.database.CursorIndexOutOfBoundsException: Index -1 requested, with a size of 3
    display:inline-block的运用
    图解单片机8位PWM、16位PWM中“位”的含义!
    UVA10006
    [置顶] CF 86D Powerful array 分块算法入门,n*sqrt(n)
    俗人解释 三维渲染 在工作过程
    HDU 4414 Finding crosses(dfs)
    Codeforces 35E Parade 扫描线 + list
    hdu 4374 单调队列
    LeetCode OJ平台Sort Colors讨论主题算法
  • 原文地址:https://www.cnblogs.com/weijun/p/5847579.html
Copyright © 2020-2023  润新知