SqlPlus SP2-0734:错误

问题描述 投票:0回答:3

我是使用 SqlPlus 的新手,但对于使用 SQL 并不陌生,在我的编辑器中编写此内容并尝试运行我编写的脚本后,我收到以下错误。所有这些似乎都是有效的并且适用于 sql fiddle...我不确定问题是什么。有什么想法吗?我创建的文件似乎都不起作用......

SQL> start sales.sq;

其中包含

1  create table salesreps
2  (empl_num number(3,0) primary key,
3  name varchar2(15) not null,
4  age number(3,0),
5  rep_office number(2,0),
6  title varchar2(10),
7  hire_date varchar2(10) not null,
8  manager number(3,0),
9  quota number(10,2),
10 sales number(10,2) not null);

产生以下错误

SP2-0734: unknown command beginning "name varch..." - rest of line ignored.
SP2-0734: unknown command beginning "age number..." - rest of line ignored.
SP2-0734: unknown command beginning "rep_office..." - rest of line ignored.
SP2-0734: unknown command beginning "title varc..." - rest of line ignored.
SP2-0044: For a list of known commands enter HELP
and to leave enter EXIT.
SP2-0734: unknown command beginning "hire_date ..." - rest of line ignored.
SP2-0734: unknown command beginning "manager nu..." - rest of line ignored.
SP2-0734: unknown command beginning "quota numb..." - rest of line ignored.
SP2-0734: unknown command beginning "sales numb..." - rest of line ignored.
SP2-0044: For a list of known commands enter HELP
and to leave enter EXIT.
sql oracle unix sqlplus
3个回答
45
投票

默认情况下,SQL*Plus 不喜欢空行。 但是,我们可以轻松配置 SQL*Plus 环境来忽略它们:

SQL>  set sqlblanklines on

我们还可以将设置放入 glogin.sql 文件中(假设我们可以编辑它,但情况并非总是如此)。

请注意,该参数在旧版本的客户端中不起作用。


6
投票

正如评论中提到的,此问题可能是由 UTF-8 BOM(字节顺序标记)编码引起的。通过将文件内容复制到 Notepad++ 可以轻松修复它。

在我们的示例中,在 Azure DevOps 中编辑 sql 文件时,编码从 UTF-8 更改为 UTF-8 BOM。

说明: 当您以 UTF-8 格式保存文件时,某些编辑器会自动添加这些字节。其中一些让您可以选择不保存这些字节,这通常是最好的选择。要删除这些字节,请尝试使用 Notepad++ 等编辑器,它可以让您选择不保存这些字符。


0
投票

谢谢,如上所述,从 dbscript.sql 文件中删除空格后,我能够成功手动安装 db。请找到我的数据库脚本以供使用: 创建数据库 nik 由 sys_password 识别的用户 SYS 由 system_password 识别的用户系统 日志文件组 1 ('/u01/app/oracle/oradata/nik/redo01.log') 大小 50M, 组 2('/u01/app/oracle/oradata/nik/redo02.log')大小 50M, 组 3 ('/u01/app/oracle/oradata/nik/redo03.log') 大小 50M 最大日志文件 5 MAXLOG会员5 最大日志历史1 最大数据文件数 100 字符集 AL32UTF8 国家字符集 AL16UTF16 本地范围管理 数据文件'/u01/app/oracle/oradata/nik/system01.dbf'大小700M重用 SYSAUX 数据文件 '/u01/app/oracle/oradata/nik/sysaux01.dbf' 大小 550M 重用 默认表空间用户 数据文件 '/u01/app/oracle/oradata/nik/users01.dbf' 大小 500M 在 MAXSIZE 上重复使用自动扩展无限 默认临时表空间温度 TEMPFILE '/u01/app/oracle/oradata/nik/temp01.dbf' 大小 20M 重用 撤消表空间 undotbs1 数据文件 '/u01/app/oracle/oradata/nik/undotbs01.dbf' 大小 200M 在最大大小上重复使用自动扩展无限;

© www.soinside.com 2019 - 2024. All rights reserved.