declare问题

woshibaobei 2006-09-21 05:40:50
在sql*plus worksheep下执行语句:
declare
var1 char(6);
begin
var1='123';
dbms_output.put_line(var1);
end;
为什么出错:错误位于第一行 declare


...全文
294 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
woshibaobei 2006-09-21
  • 打赏
  • 举报
回复
我机器出问题了?
woshibaobei 2006-09-21
  • 打赏
  • 举报
回复
太神奇了,我在两台机器上都测试了,都是同一现象。
况且,在sql*plus worksheep下执行成功后,紧接着在sql*plus 下执行,也说表已建立阿,并没有说,对象已存在。
wiler 2006-09-21
  • 打赏
  • 举报
回复
我测试过了
表在system下
woshibaobei 2006-09-21
  • 打赏
  • 举报
回复
不明原因了,我在另一台机器上也是能运行。
谢谢wiler,你顺便看看这个问题好吗?
以system,manager,sysdba登录,连接数据库
在sql*plus worksheep下执行语句:
create table student
( sno char(8),
sname char(10),
ssex char(2),
syear date,
clno char(6));
信息:表已创建
按我的理解,表student应该建在system用户下,可是在system方案下找不到表student.
同样的语句在sql*plus下执行,表在system用户中。
问:在在sql*plus worksheep下执行缺省用户名的建表语句,表建在哪里?

多谢了,刚刚学习oracle,望多指教。

wiler 2006-09-21
  • 打赏
  • 举报
回复
在sql*plus worksheet测试
declare
var1 char(6);
begin
var1:='123';
dbms_output.put_line(var1);
end;

PL/SQL 过程已成功完成。
woshibaobei 2006-09-21
  • 打赏
  • 举报
回复
谢谢!
对赋值语句我发错了。
程序中是 var1:='123';这样的。


wiler 2006-09-21
  • 打赏
  • 举报
回复
var1='123';错了,应该是
var1:='123';

17,382

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧