1. 启动服务
OracleDBConsoleorcl Oracle 企业管理器服务
OracleOraDb10g_home2iSQL*Plus Oracle的T-SQL服务
OracleServiceORCL oracle 的数据库实例服务
OraclOraDb10g_home1TNSListener 数据库监听服务
如果使用DBCA来创建一个数据库则会多出一个数据库实例的服务
比如数据库名为:MyScool
服务名称为:oraclejobSchedulerMyschool , OracleServiceMySchool
2. 管理后台
系统用户有SYS 与 SYSTEM ,SYS权限最大,数据库角色: SYSOPER,SYSDBA,Normal
在程序里面打开SQL-Plus,运行它需要打开 OraclOraDb10g_home1TNSListener 服务
输入用户名和密码与数据库名就可以登录上去了
用户名: SYS
密码: 123456
主机字符串: myschool as sysdba
如果不在myschool后面接上 as sysdba 的话就先报个connection 错误。
因为连接数据库语法如下
CONN[ECT] [logon] [AS {SYSDBA|SYSOPER}]
所以那面需要加上as sysdba,以上帐号不区分大小写,当然。如果你是用system用户则可以不用加上as sysdba
如果感觉不爽,可以用网页模式访问也行
http://localhost:5560/isqlplus/
接下来我们用sql 语句来工作
一. create tablespace 创建表空间
create tablespace llr_space //创建一个名叫llr_space的表空间
datafile 'd:\oracle\db\llr.dbf' //与表空间关联的数据文件的位置及名称
size 100m //文件大小为100m,单位 k,m
autoextend on next 32m maxsize unlimited //文件大小可自动扩展,每次扩展32MB
logging //日志
extent management local //表空间中的盘区管理采用本地化管理方式
segment space management auto; //最后一句用;结束 表空间中段的管理方式为自动管理方式
2. 创建用户
create user llr //用户名
identified by llr //密码
default tablespace llr_space //默认访问表空间
3. 给用户操作数据库相应权限
oracle用户权限分两种:系统权限和对象权限
但比较复杂,所以分组设置
角色
CONNECT: 临时用户,不需要创建表的用户
RESOURCE:一般数据库用户,可以创建表等系统东西
DBA: 管理数据库最高权限
语法:
grant resource to llr // 将resource角色授予用户llr
grant select/update on 表 to 用户 //将表其中的选择,修改权限授予用户llr
4.创建表
oracle 中的数据类型
A. 字符数据类型
char 固定长度字符 varchar2 可变长度的字符 nvarchar2 unicode编码的可变长度的字符一般用来放中文 1:2 比例
B. 数值类型
NUMBER (长度,范围) 长度<=38
C. 日期时间类型
Date 年月日 时分秒 timestamp 秒精确到小数点6位
D. LOB类型
BLOB 存储二进制对象如:图像、音频等 CLOB用于存储字符格式的大型对象
5. 创建表语法
create table users(
id number(11,0) primary key,
u_name nvarchar2(10) not null,
u_pwd nvarchar2(10) not null //最后一个不要写 “,”号
);
alter table users add constraint pk_user_id primary key (id) //如果添加主键约束
或者直接在建表的时候写,有多少写多少
create table users(
id number(11,0) primary key,
u_name nvarchar2(10) not null,
u_pwd nvarchar2(10) not null ,
constraint pk_user_id primary key (id)
);
6. 给表添加注释
COMMENT ON table users is '用户登录表';
COMMENT ON COLUMN users.id is '用户主键'
7. 序列
orcale 中没有自动增长列这个说法,我们可以使用序列来完成同样的事情
create sequence seq_llr
start with 1 //起始值
increment by 1 //增量 可以为-1
nominvalue //是否有最小值 minvalue 10
nomaxvalue //是否有最大值 maxvalue 100
nocycle //是否到达最大值或最小值 cycle 到了maxvalue定的值100以后到头就不走了
nocache //是否有缓存
order; //保证序列值的唯一性和顺序性 NOorder 只有唯一性
接下来我们使用 nextval 得到下一个值 currval得到当前值
select seq_llr.nextval from dual 执行一次看一条记录
其中dual 为一张万能的虚拟表,可以将一些单列数据内容放入到其中。
好了。orcale 的基本操作就是这样。明天继续