oracle中SQL的使用.doc

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
oracle中SQL的使用

1. 数据类型 Select 属性,dump(属性) from 表; dump函数用于查看表中属性值的具体信息。例如类型号,长度,ASCII码。 char varchar 如果数据长度固定,用char类型存取速度快。长度变化大的就用varchar。 nchar,nvarchar中中英文一个字符都占1个长度。char,varchar中中文一个字符都占2个长度。 clob 变长,最大8tb,字符型大对象 blob 二进制数据,可以存放图片/声音 8tb 要求对文件安全性特别高时,可以将图片/声音放入数据库;一般不放,因为读取慢,而放路径到数据库。 number(p,s) 存放整数,小数均可。P为有效位,s为小数位。1=p=38 -84=s=127 变长(节省空间) 有效位:从左到右,第一个非0数就是第一个有效位。 0有效位2位 number(5,2) 表示一个小数有5位有效数,2位小数。范围 -999.99~999.99 575.316 会被四舍五入575.32 number(5) ( number(5,0) -99999 ~ 99999 number(4,2) 无法存取 number(6,-2) 100 -2表示精确到小数点前2位 163.89 number(6,-2) 200 133.8991 number(6,-2) 100 date 日期类型 表示时间(年月日时分秒) Create table a(birthday date) Insert into a values(‘2011-11-11’); ————错误 Insert into a values(‘11-11月-11’); 天-月-年 Oracle日期的默认格式 ‘dd-mm-yyyy’ (可以用oracle函数将其变成习惯的日期格式) TIMESTAMP(n) 邮戳类型,当对数据进行更新的时候,会自动更新日期。 例如:生日是邮戳类型,当某人姓名信息更新时,生日会变成更新姓名时的系统时间。 2. 修改表的定义 Alter table 表名 add (列名 类型); --添加1列 Alter table 表名 modify (列名 类型); --修改属性类型 Alter table 表名 drop column 列名; --删除1列 Rename 表名 to 新表名 --改表名 3. delete命令 Savepoint aa; --设置保存点 Delete from a; Rollback to aa; --回滚到保存点 Select * from a; 4. truncate 命令 Truncate table 表名 删除大表很快,不写日志,无法找回删除的记录。 5.nvl(表达式,0) --处理null值 如果表达式为空就返回0,如不为空,就返回表达式值。 6. oracle 用“别名”表示别名 7. || --连接字符串,把表达式或列的拼接成1列 Select sno || sname from student; --返回1列 Select sno ||’ ‘s name is ’ || sname from student; --返回1列 注意:oracle中的sql语句不区分大小写,构造语句中用到的常量值区分大小写。 Select * from student where sname=’Lily’ Select * from student where sname=’lily’ 8.dual表 dual是一个虚拟表,用来构成select的语法规则,oracle保证dual里面永远只有一条记录。查看当前用户,可以在 SQL Plus中执行下面语句 select user from dual; 用来调用系统函数   select to_char(sysdate,yyyy-mm-dd hh24:mi:ss) from dual;--获得当前系统时间   select SYS_CONTEXT(USERENV,TERMINAL) from dual;--获得主机名   select SYS_CONTEXT(USERENV,language) from dual;--获得当前 locale   select dbms_random.random from dual;--获得一个随机数 (3)得到序列的下一个值或当前值,用下面语句   select your_sequence.nextval from dual;--获得序列your_sequence的下一个值   select your_sequence.

文档评论(0)

dajuhyy + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档