oracle命令行执行sql脚本6,使用sqlplus从命令行运行Oracle脚本时出现问题

尝试使用sqlplus将SQL脚本运行到Oracle时出现问题。脚本只填充一些虚拟数据:

DECLARE

role1Id NUMBER;

user1Id NUMBER;

role2Id NUMBER;

user2Id NUMBER;

role3Id NUMBER;

user3Id NUMBER;

perm1Id NUMBER;

perm2Id NUMBER;

perm3Id NUMBER;

perm4Id NUMBER;

perm5Id NUMBER;

BEGIN

INSERT INTO PB_USER(USER_ID,USER_NAME, USER_EMAIL, USER_ACTIVEYN)

VALUES(PB_USER_ID_SEQ.nextval, 'RoleDataManagerTests_Username', 'test@test.com',' ');

INSERT INTO ROLES(ROLE_ID, ROLE_NAME)

VALUES(PB_ROLE_ID_SEQ.nextval, 'Test role 1');

INSERT INTO ROLES(ROLE_ID, ROLE_NAME)

VALUES(PB_ROLE_ID_SEQ.nextval, 'Test role 2');

INSERT INTO ROLES(ROLE_ID, ROLE_NAME)

VALUES(PB_ROLE_ID_SEQ.nextval, 'Test role 3');

SELECT ROLE_ID INTO role1Id FROM ROLES WHERE ROLE_NAME = 'Test role 1';

SELECT USER_ID INTO user1Id FROM PB_USER WHERE USER_NAME = 'RoleDataManagerTests_Username';

INSERT INTO USERS_ROLES(USER_ID, ROLE_ID) VALUES(user1Id, role1Id);

SELECT ROLE_ID INTO role2Id FROM ROLES WHERE ROLE_NAME = 'Test role 2';

SELECT USER_ID INTO user2Id FROM PB_USER WHERE USER_NAME = 'RoleDataManagerTests_Username';

INSERT INTO USERS_ROLES(USER_ID, ROLE_ID) VALUES(user2Id, role2Id);

SELECT ROLE_ID INTO role3Id FROM ROLES WHERE ROLE_NAME = 'Test role 3';

SELECT USER_ID INTO user3Id FROM PB_USER WHERE USER_NAME = 'RoleDataManagerTests_Username';

INSERT INTO USERS_ROLES(USER_ID, ROLE_ID) VALUES(user3Id, role3Id);

INSERT INTO PERMISSIONS(PERMISSION_ID, KEY, DESCRIPTION)

VALUES (PB_PERMISSION_ID_SEQ.nextval, 'perm1', 'permission 1');

INSERT INTO PERMISSIONS(PERMISSION_ID, KEY, DESCRIPTION)

VALUES (PB_PERMISSION_ID_SEQ.nextval, 'perm2', 'permission 2');

INSERT INTO PERMISSIONS(PERMISSION_ID, KEY, DESCRIPTION)

VALUES (PB_PERMISSION_ID_SEQ.nextval, 'perm3', 'permission 3');

INSERT INTO PERMISSIONS(PERMISSION_ID, KEY, DESCRIPTION)

VALUES (PB_PERMISSION_ID_SEQ.nextval, 'perm4', 'permission 4');

INSERT INTO PERMISSIONS(PERMISSION_ID, KEY, DESCRIPTION)

VALUES (PB_PERMISSION_ID_SEQ.nextval, 'perm5', 'permission 5');

SELECT PERMISSION_ID INTO perm1Id FROM PERMISSIONS WHERE KEY = 'perm1';

SELECT PERMISSION_ID INTO perm2Id FROM PERMISSIONS WHERE KEY = 'perm2';

SELECT PERMISSION_ID INTO perm3Id FROM PERMISSIONS WHERE KEY = 'perm3';

SELECT PERMISSION_ID INTO perm4Id FROM PERMISSIONS WHERE KEY = 'perm4';

SELECT PERMISSION_ID INTO perm5Id FROM PERMISSIONS WHERE KEY = 'perm5';

INSERT INTO ROLES_PERMISSIONS(ROLE_ID, PERMISSION_ID)

VALUES(role1Id, perm1Id);

INSERT INTO ROLES_PERMISSIONS(ROLE_ID, PERMISSION_ID)

VALUES(role1Id, perm2Id);

INSERT INTO ROLES_PERMISSIONS(ROLE_ID, PERMISSION_ID)

VALUES(role1Id, perm3Id);

INSERT INTO ROLES_PERMISSIONS(ROLE_ID, PERMISSION_ID)

VALUES(role2Id, perm3Id);

INSERT INTO ROLES_PERMISSIONS(ROLE_ID, PERMISSION_ID)

VALUES(role3Id, perm4Id);

INSERT INTO ROLES_PERMISSIONS(ROLE_ID, PERMISSION_ID)

VALUES(role3Id, perm5Id);

END;

/

当我使用Oracle SQL Developer运行脚本时,它工作得很好,但是当我使用sqlplus命令行工具时,这是输出的结果,然后它就挂起了:

SQL*Plus: Release 11.1.0.7.0 - Production on Tue May 11 09:49:34 2010

Copyright (c) 1982, 2008, Oracle. All rights reserved.

Connected to:

Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bit Production

With the Partitioning, Oracle Label Security, OLAP, Data Mining Scoring Engine

and Real Application Testing options

我正在使用此命令行运行该工具,它对其他脚本很好:

sqlplus username/password@server/dbname @Setup.sql

有什么想法吗?谢谢。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值