Oracle有关的服务如下:
1、OracleOraDb10g_home1TNSListener服务:服务器配置好的监听器服务。
2、OracleServiceORCL服务:Oracle 10g数据库实例ORCL。
3、OracleDBConsoleorcl服务:Oracle 10g企业管理器服务。
4、OracleOraDb10g_home1iSQL*Plus服务:Oracle 10g iSQL*Plus服务。
5、OracleJobSchedulerORCL服务:Oracle 10g企业调度服务。
net start(stop)oracleservice[sid] 启动与停止oracle数据库实例。
oracle的sql*plus是与oracle进行交互的客户端工具。
登录数据库的方法:
sqlplus /nolog 进入sqlplus环境,nolog参数表示不登录。
1:启动SQLPLUS的同时登陆数据库
sqlplus 用户名/密码@服务名
2:启动SQLPLUS以后登录数据库的方法
connect 用户名/密码@服务名
3:指定登录的身份
sqlplussys/password@orcl as sysdba
常用命令:
disconn /*用户断开连接*/
/ /*执行sqlplus缓冲区的语句*/
exit | quit /*终止SQL*PLUS的操作(会话)*/
edit /*对当前的输入进行编辑*/
desc /*查看表结构*/
[default] sysdate/*默认系统时间*/
表空间:
create tablespacetp_name datafile 'datafile.dbf' size 10m autoextend on next 5m maxsize 100m; /*创建表空间*/
drop tablespacetp_name ; /*删除表空间*/
alter tablespacetp_name add datafile 'datafile.dbf' size 5m; /*增加数据文件*/
alter databasedatafile 'datafile.dbf' resize 10m; /*修改数据文件大小*/
alter tablespacetp_name drop datafile 'datafile.dbf'; /*删除数据文件*/
用户管理:
show user /*显示当前连接的用户*/
create useruser_name identified by password default tablespace tablespace_name quotaprofile; /*创建用户*/
drop useruser_name [cascade] /*删除用户*/
grant 系统权限 to 用户/角色 [with admin optian]; /*授予系统权限*/
grant 对象权限 on 对象名 to user_name [with grant optian] /*授予对象权限*/
alter useruser_name identified by newpassword; /*更改其他用户的密码*/
password /*更改当前用户的密码*/
alter useruser_name account lock /*锁用户*/
alter useruser_name account unlock /*用户解锁*/
create user user_name identified by password defaulttablespace tablespace_name; /*创建用户时指定表空间*/
create tabletable_name(c1 char(8)) tablespace tablespace_name; /*建表时指定表空间*/
alter user user_name default tablespacetablespace_name; /*修改用户建表的表空间*/
角色管理:
create role role_name; /*创建角色*/
drop role role_name; /*删除角色*/
revoke 权限/角色 from 用户/角色 /*撤销权限*/
常用数据类型:
Character() /*字符串*/
Number(p,s) /*数值*/
Date /*日期*/
常见约束条件:
primary key /*主键*/
foreign key /*外键*/
not null /*非空*/
unique /*唯一*/
check /*检查*/
user_constraints/*约束数据字典*/
user_cons_columns/*约束数据字典*/
添加约束方法:
①、建表(列级表级)
②、修改或增加列的时候
③、alter table的时候
alter table table_name add[constraints constraint_name] 约束(列名) /*添加约束*/
alter table table_name dropconstraints constraint_name /*删除约束*/
表的管理:
create table [schema.]table_name(
column_name datatype constraint ,
…… ,
)[tablespace tp_name] /*建表语句*/
rename old_table_name tonew_table_name /*修改表名*/
drop tale table_name [cascade constraints] /*删除表*/
flashback table table_name tobefore drop /*闪回某个被删除的表*/
alter table table_name add列名 数据类型 [约束] /*添加列*/
alter table table_name modify列名 数据类型 /*修改列*/
alter table table_name dropcolumn 列名 [cascade constraints] /*删除列*/
alter table table_name setunused column_name /*设置某个列为不活跃状态*/
alter table table_name dropunused columns /*删除unused列*/
alter table table_namerename column old_col tonew_col /*修改列名*/
create table table_name [(column,……)] as select* from table_name [where] /*复制表*/
[dba alluser]_tables /*表数据字典*/
数据操纵语言(DML):
insert into table_name[(column1,……)] values(values1,……) /*插入数据*/
insert into table_name2[(column1,column2……)]
select values1,values2,…… from table_name1 where /*子查询插入数据*/
delete from table_name [where] /*删除数据*/
truncate table table_name /*DDL语句,删除所有数据*/
update table_name set column1=values,column2=values2…… [where] /*更新数据*/
事务处理:
commit /*提交事务*/
rollback /*回滚事务*/
savepoint /*事务标记点*/ --savepoint savepoint_name(A);
rollback tosavepoint /*回滚到标记点*/ --rollback to savepointsavepoint_name(A);