论坛首页 综合技术论坛

oracle基础知识和简单函数

浏览 1839 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2011-03-19   最后修改:2011-03-19
oracle管理员:
sys========>admin
system=====>manager
scott======>tiger
================================================================
oracle:
	1.启动监听
	2.启动实例
用户登录
	sqlplus / as sysdba
创建用户
	create user XXX(用户名)identified by XXX(用户名);
系统权限
	 
创建会话
	grant create session to XXX(用户名);
授权表空间
	grant create table to XXX(用户名);
授权表
	grant unlinited tablespace to XXX(用户名);
==================================================================
撤销系统的权限:
	revoke create session from XXX(用户名);
撤销创建表的权限:
	revoke create table from XXX(用户名);
撤销表空间的权限:
	revoke unlimited tablespace from XXX(用户名);
===================================================================
角色:(角色不属于某一个)
创建角色
	create role myrole;//创建角色
	grant create session to myrole;
	drop role myrole;//删除角色
有些系统权限无法直接赋予角色
	 create table  create any table //创建表
	[alter table ] alter any table; //修改
	[drop table ]  drop any table	//删除
====================================================================
oracle文本信息的收集与修改
剪切和粘贴:
	lpad,rpad,ltrim,rtrim,trim,length,substr,instr.这些函数都用于剪切和粘贴.
1.lpad和rpad的格式
	lpad(string,length [,'set'])====>lpad右边排列对齐
	rpad(String,length [,'set'])====>rpad左边排列对齐
eg:select rpad(ename,23,'.') 姓名 ,job 工作  from emp;
eg:select lpad(ename,11) 姓名,job 工作 from emp;

2.ltrim,rtrim,trim
	ltrim,rtrim从串的左边或右边删除不需要的字符.
ltrim和rtrim的格式
	ltrim(string [,' set'])=======>从标题的左边删除
	rtrim(string [,' set'])=======>从标题的右边删除
	 trim(string [,' set'])=======>从标题的两端删除
一次删除多个字符:只要简单地把药删除的字符组成一个列表
eg:去掉右边的引号和括号
	select rtrim(title(字段名),',"')from emp;===>从标题的右边删除双引号何括号
eg:组合来删除左右的引号和括号
	select ltrim(rtrim(title(字段名),',"'),'"') from emp;
eg:两端删除
	select trim('"' from title(字段名))from emp;
	select trim(leading '"' from title(字段名))from emp;===>从左端删除
	select trim(trailing '"' from title(字段名))from emp;===>从右端删除
	
3.lower,upper initcap
		lower把串或列中的字母转换成小写
		upper把串或列中的字母转换成大写
		initcap将串或列中每个单词的开头字母转换成大写
eg:select ename 姓名, lower(ename),initcap(ename) from emp;
综合:
eg:(用别名)
	select initcap(lower(title(字段名1))) as title(别字段名2),
		   initcap(lower(rtrim(ltrim(title(字段名3),',"'),'."'))) as title(别字段名3),
		   from emp;
		   
4.length(该函数没多大用,不能对一个使用long数据类型的列使用length函数)
	length告诉用户一个串有多长(字母,空格,字符)
eg:select ename 姓名, initcap(lower(ename)),initcap(ename),length(ename) from emp;

5.substr
	substr函数用于取出串的一部分
substr格式:
			substr(string,start [,count])
该函数取出string的一个子集,该子集从start开始,一直连续count个字符.
如果不指定count,substr从start开始一直提到串尾.	
eg:select ename 姓名,substr(ename,2,4),length(ename) from emp;	

6.instr
	instr函数允许在串中简单或复杂地搜索一组字符
instr格式:
	instr(string,set [,start [, occurrence]])
========>查找'A'第一次出现的位置
eg: select ename 姓名,substr(ename,2,4),length(ename),instr(ename,'A') from emp;
========>查找'A'第二次出现的位置
eg: select ename 姓名,substr(ename,2,4),length(ename),instr(ename,'A'1,2) from emp;
论坛首页 综合技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics