Oracle学习笔记1-用户操作及基本数据类型
2013-03-29 13:22
309 查看
之前一段时间闲来无事,因而利用此时间对Oracle的语法进行了一次系统的学习,现将学习笔记分享一下,希望对需要之人有所帮助,若有什么错误之处,请不吝赐教。
一 对用户进行操作:
前提:之行该命令的用户必须有DBA权限
给表空间添加新用户:
CREATE USER tom(用户名) IDENTIFIED BY tom(密码)
DEFAULT TABLESPACE inspur(默认表空间)
TEMPORARY TABLESPACE TEMP(临时表空)
给用户指定角色:
ALTER USER tom DEFAULT ROLE "CONNECT";
给用户授权的方法:
1) 直接将权限授予用户
2) 通过角色间接将权限授予用户
二 Oracle的基本数据类型
Char | 用于描述定长的字符型数据,长度<=2000字节 |
varchar2 | 用于描述变长的字符型数据,长度<=4000字节 |
nchar | 用来存储Unicode字符集的定长字符型数据,长度<=1000字节 |
nvarchar2 | 用来存储Unicode字符集的变长字符型数据,长度<=1000字节 |
number | 用来存储整型或者浮点型数值 |
Date | 用来存储日期数据 |
Long | 用来存储最大长度为2GB的变长字符数据 |
Raw | 用来存储非结构化数据的变长字符数据,长度<=2000字节 |
Long raw | 用来存储非结构化数据的变长字符数据,长度<=2GB |
rowid | 用来存储表中列的物理地址的二进制数据,占用固定的10个字节 |
Blob | 用来存储多达4GB的非结构化的二进制数据 |
Clob | 用来存储多达4GB的字符数据 |
nclob | 用来存储多达4GB的Unicode字符数据 |
Bfile | 用来把非结构化的二进制数据存储在数据库以外的操作系统文件中 |
urowid | 用来存储表示任何类型列地址的二进制数据 |
float | 用来存储浮点数 |
目前没有本质的区别 但是:
varchar2是oracle提供的独特的数据类型oracle保证在任何版本中该数据类型向上和向下兼容,但不保证varchar,这是因为varchar是标准sql提供的数据类型有可能随着sql标准的变化而改变
表的约束:
PRIMARY KEY约束:这个约束称为主键约束,主键约束列不能为空,而且主键不能重复
FOREIGN KEY约束:这个约束称为外键约束或参照完整性约束,一个外键对应于另一个表中的主键,外键引用另外一个表的主
键值
【在Oracle中当一个表中的一个字段(即做为外键)要引用另外一个表中的字段做为主键时,该字段在本表必须存在。例如:
create table test1(
t1_id varchar2(20) not null primary key,
name varchar(2) ,
constraint t1_id foreign key (t2_id) referenses test2(t2_id)
)
】
NOT NULL :约束的列值不能为空,也就是每一行的这列上都必须有值,可使用SQL语句将某列设置为非空
(例如:ALTER TABLE EMP MODIFY(USERNAME VARCHAR2(20) NOT NULL)
UNIQUE约束: 这个约束说明被约束列的值必须独一无二,即表中这个列值不能重复
CHECK约束:列值必须满足CHECK约束,利用CHECK约束可以强制这个列值必须满足某些条件,这个值是PL/SQL表达式,如果表达式返回结果为真,就允许这个值存储
(例如
CREATE TABLE DEMO_TAB5(
ID VARCHAR2(2),
SAL NUMBER(10,2) CHECK (SAL>0)
)
相关文章推荐
- 数组常见操作、Arrays类、基本数据类型包装类
- java:各基本数据类型的操作
- Redis数据类型与基本操作
- java基础之IO流--DataOutputStream(专门用于操作Java基本数据类型的IO流对象)
- IO流 操作基本类型数据的流对象 DataStream
- 第2章_基本数据类型和基本操作_编程练习Exercise2.7通过创建窗口进行大小写的切换
- redis实战基础篇:redis的5种数据类型的基本操作
- C#visual2012基本操作、数据类型、类型转换
- java基本数据类型及其所对应对象的自动装箱,new,valueof操作研究
- Numpy 数据类型和基本操作
- scala学习-基本数据类型和简单操作5
- redis基本数据类型操作之 list
- oracle基本操作语法(建表空间,建用户,授权,数据导入导出)
- 基本数据类型操作二:float与double的范围和精度
- 基本数据类型操作三:float和double变量的赋值
- 基本数据类型操作
- 数据表的基本操作、数据类型
- Java中的移位操作以及基本数据类型转换成字节数组【收集】
- numpy教程 - 基本数据类型、多维数组ndarray及其切片操作
- 基本数据类型,文件操作