C:\Documents and Settings\Administrator>sqlplus /nolog
SQL*Plus: Release 9.2.0.1.0 - Production on 星期二 1月 17 09:29:46 2006
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
SQL> conn / as sysdba
已连接。
SQL> desc dba_users;
名称 是否为空? 类型
----------------------------------------- -------- ----------------------------
USERNAME NOT NULL VARCHAR2(30)
USER_ID NOT NULL NUMBER
PASSWORD VARCHAR2(30)
ACCOUNT_STATUS NOT NULL VARCHAR2(32)
LOCK_DATE DATE
EXPIRY_DATE DATE
DEFAULT_TABLESPACE NOT NULL VARCHAR2(30)
TEMPORARY_TABLESPACE NOT NULL VARCHAR2(30)
CREATED NOT NULL DATE
PROFILE NOT NULL VARCHAR2(30)
INITIAL_RSRC_CONSUMER_GROUP VARCHAR2(30)
EXTERNAL_NAME VARCHAR2(4000)
SQL> select username,user_id,password from dba_users;
USERNAME USER_ID PASSWORD
------------------------------ ---------- ------------------------------
SYS 0 DCB748A5BC5390F2
SYSTEM 5 EED9B65CCECDB2E9
TEST 34 7A0F2B316C212D67
DBSNMP 19 E066D214D5421CCC
OUTLN 11 4A3BA55E08595C81
WMSYS 21 7C9BA362F8314299
XDB 30 88D8364765FCE6AF
ANONYMOUS 31 anonymous
已选择8行。
SQL> alter user sys identified by sys;
用户已更改。
SQL> select username,user_id,password from dba_users;
USERNAME USER_ID PASSWORD
------------------------------ ---------- ------------------------------
SYS 0 4DE42795E66117AE
SYSTEM 5 EED9B65CCECDB2E9
TEST 34 7A0F2B316C212D67
DBSNMP 19 E066D214D5421CCC
OUTLN 11 4A3BA55E08595C81
WMSYS 21 7C9BA362F8314299
XDB 30 88D8364765FCE6AF
ANONYMOUS 31 anonymous
已选择8行。
SQL> connect sys/sys
ERROR:
ORA-28009: connection to sys should be as sysdba or sysoper
警告: 您不再连接到 ORACLE。
SQL> connect sys/sys as sysdba
已连接。
SQL>
××××××××××××××××××××××××××××××××××××××××××××××××
用函数创建用户,还要加上连接和DBA权限,成功返回true,失败返回false。以及怎样调用?????
SQL> conn system/manager
已连接。
SQL> create or replace procedure create_user as
2 begin
3 execute immediate 'create user temp identified by psw
4 execute immediate 'grant dba to temp';
5 end create_user;
6 /
过程已创建。
已用时间: 00: 00: 01.61
SQL> exec create_user;
BEGIN create_user; END;
*
ERROR 位于第 1 行:
ORA-01031: 权限不足
ORA-06512: 在"SYSTEM.CREATE_USER", line 3
ORA-06512: 在line 1
已用时间: 00: 00: 00.80
SQL> grant create user to system;
授权成功。
已用时间: 00: 00: 00.01
SQL> exec create_user;
PL/SQL 过程已成功完成。
已用时间: 00: 00: 00.50
SQL> select * from all_users;
USERNAME USER_ID CREATED
------------------------------ ---------- ----------
SYS 0 14-11月-00
SYSTEM 5 14-11月-00
OUTLN 11 14-11月-00
DBSNMP 16 14-11月-00
PLATE 41 09-6月 -05
AURORA$JIS$UTILITY$ 25 14-11月-00
OSE$HTTP$ADMIN 26 14-11月-00
AURORA$ORB$UNAUTHENTICATED 27 14-11月-00
ORDSYS 28 14-11月-00
ORDPLUGINS 29 14-11月-00
MDSYS 30 14-11月-00
USERNAME USER_ID CREATED
------------------------------ ---------- ----------
CTXSYS 33 14-11月-00
SCOTT 35 14-11月-00
ADAMS 36 14-11月-00
JONES 37 14-11月-00
CLARK 38 14-11月-00
BLAKE 39 14-11月-00
MTSSYS 40 14-11月-00
TEMP 43 19-10月-05
已选择19行。
已用时间: 00: 00: 00.71
SQL> conn temp/psw
已连接。
SQL>
执行ddl语句需要使用动态sql
另:执行ddl语句自动commit;dba角色已经包含了connect功能。