在%oracle_home%/sqlplus/deom
里的demobld.sql--
-- Copyright (c) Oracle Corporation 1988, 2000.  All Rights Reserved.
--
-- NAME
--   demobld.sql
--
-- DESCRIPTION
--   This script creates the SQL*Plus demonstration tables in the
--   current schema.  It should be STARTed by each user wishing to
--   access the tables.  To remove the tables use the demodrop.sql
--   script.
--
--  USAGE
--    From within SQL*Plus, enter:
--        START demobld.sqlSET TERMOUT ON    --接下来句是什么意思
PROMPT Building demonstration tables.  Please wait.
SET TERMOUT OFFDROP TABLE EMP;
DROP TABLE DEPT;
DROP TABLE BONUS;
DROP TABLE SALGRADE;
DROP TABLE DUMMY;CREATE TABLE EMP
       (EMPNO NUMBER(4) NOT NULL,
        ENAME VARCHAR2(10),
        JOB VARCHAR2(9),
        MGR NUMBER(4),
        HIREDATE DATE,
        SAL NUMBER(7, 2),
        COMM NUMBER(7, 2),
        DEPTNO NUMBER(2));INSERT INTO EMP VALUES
        (7369, 'SMITH',  'CLERK',     7902,
        TO_DATE('17-DEC-1980', 'DD-MON-YYYY'),  800, NULL, 20);
INSERT INTO EMP VALUES
        (7499, 'ALLEN',  'SALESMAN',  7698,
        TO_DATE('20-FEB-1981', 'DD-MON-YYYY'), 1600,  300, 30);
INSERT INTO EMP VALUES
        (7521, 'WARD',   'SALESMAN',  7698,
        TO_DATE('22-FEB-1981', 'DD-MON-YYYY'), 1250,  500, 30);
INSERT INTO EMP VALUES
        (7566, 'JONES',  'MANAGER',   7839,
        TO_DATE('2-APR-1981', 'DD-MON-YYYY'),  2975, NULL, 20);
INSERT INTO EMP VALUES
        (7654, 'MARTIN', 'SALESMAN',  7698,
        TO_DATE('28-SEP-1981', 'DD-MON-YYYY'), 1250, 1400, 30);
INSERT INTO EMP VALUES
        (7698, 'BLAKE',  'MANAGER',   7839,
        TO_DATE('1-MAY-1981', 'DD-MON-YYYY'),  2850, NULL, 30);
INSERT INTO EMP VALUES
        (7782, 'CLARK',  'MANAGER',   7839,
        TO_DATE('9-JUN-1981', 'DD-MON-YYYY'),  2450, NULL, 10);
INSERT INTO EMP VALUES
        (7788, 'SCOTT',  'ANALYST',   7566,
        TO_DATE('09-DEC-1982', 'DD-MON-YYYY'), 3000, NULL, 20);
INSERT INTO EMP VALUES
        (7839, 'KING',   'PRESIDENT', NULL,
        TO_DATE('17-NOV-1981', 'DD-MON-YYYY'), 5000, NULL, 10);
INSERT INTO EMP VALUES
        (7844, 'TURNER', 'SALESMAN',  7698,
        TO_DATE('8-SEP-1981', 'DD-MON-YYYY'),  1500,    0, 30);
INSERT INTO EMP VALUES
        (7876, 'ADAMS',  'CLERK',     7788,
        TO_DATE('12-JAN-1983', 'DD-MON-YYYY'), 1100, NULL, 20);
INSERT INTO EMP VALUES
        (7900, 'JAMES',  'CLERK',     7698,
        TO_DATE('3-DEC-1981', 'DD-MON-YYYY'),   950, NULL, 30);
INSERT INTO EMP VALUES
        (7902, 'FORD',   'ANALYST',   7566,
        TO_DATE('3-DEC-1981', 'DD-MON-YYYY'),  3000, NULL, 20);
INSERT INTO EMP VALUES
        (7934, 'MILLER', 'CLERK',     7782,
        TO_DATE('23-JAN-1982', 'DD-MON-YYYY'), 1300, NULL, 10);CREATE TABLE DEPT
       (DEPTNO NUMBER(2),
        DNAME VARCHAR2(14),
        LOC VARCHAR2(13) );INSERT INTO DEPT VALUES (10, 'ACCOUNTING', 'NEW YORK');
INSERT INTO DEPT VALUES (20, 'RESEARCH',   'DALLAS');
INSERT INTO DEPT VALUES (30, 'SALES',      'CHICAGO');
INSERT INTO DEPT VALUES (40, 'OPERATIONS', 'BOSTON');CREATE TABLE BONUS
        (ENAME VARCHAR2(10),
         JOB   VARCHAR2(9),
         SAL   NUMBER,
         COMM  NUMBER);CREATE TABLE SALGRADE
        (GRADE NUMBER,
         LOSAL NUMBER,
         HISAL NUMBER);INSERT INTO SALGRADE VALUES (1,  700, 1200);
INSERT INTO SALGRADE VALUES (2, 1201, 1400);
INSERT INTO SALGRADE VALUES (3, 1401, 2000);
INSERT INTO SALGRADE VALUES (4, 2001, 3000);
INSERT INTO SALGRADE VALUES (5, 3001, 9999);CREATE TABLE DUMMY
        (DUMMY NUMBER);INSERT INTO DUMMY VALUES (0);COMMIT;SET TERMOUT ON   --接下来名是什么意思
PROMPT Demonstration table build is complete.EXITcopy 到PL/SQL Developer里执行,报 缺少或无选项的错

解决方案 »

  1.   

    SET TERMOUT ON    --打开屏幕显示
    PROMPT Building demonstration tables.  Please wait.  --再屏幕上面显示"Building demonstration tables.  Please wait."
    SET TERMOUT OFF  --关闭屏幕显示这样中间执行的操作就不会显示"创建成功""插入一行"等等的信息了SET TERMOUT ON   --同上
    PROMPT Demonstration table build is complete.  --显示"Demonstration table build is complete."
      

  2.   


    INSERT INTO EMP VALUES
            (7369, 'SMITH',  'CLERK',     7902,
            TO_DATE('17-DEC-1980', 'DD-MON-YYYY'),  800, NULL, 20)--报月份不对的错改成这样就对了
    INSERT INTO EMP VALUES
            (7369, 'SMITH',  'CLERK',     7902,
            TO_DATE('17-10-1980', 'DD-MM-YYYY'),  800, NULL, 20);
      

  3.   

    我就想看书,可入门就遇到问题了,我会SQL基本语法
      

  4.   

    是这样的,日期格式的问题,
    SQL> CREATE TABLE EMP1      (EMPNO NUMBER(4) NOT NULL,
      2         ENAME VARCHAR2(10),
      3         JOB VARCHAR2(9),
      4         MGR NUMBER(4),
      5         HIREDATE DATE,
      6         SAL NUMBER(7, 2),
      7         COMM NUMBER(7, 2),
      8         DEPTNO NUMBER(2));表已创建。SQL> INSERT INTO EMP1 VALUES
      2  (7369, 'SMITH',  'CLERK',     7902,
      3  TO_DATE('17-DEC-1980', 'DD-MON-YYYY'),  800, NULL, 20);
    TO_DATE('17-DEC-1980', 'DD-MON-YYYY'),  800, NULL, 20)
            *
    第 3 行出现错误:
    ORA-01843: 无效的月份
    SQL> alter session set NLS_DATE_LANGUAGE='AMERICAN'
      2  /会话已更改。SQL> INSERT INTO EMP1 VALUES
      2  (7369, 'SMITH',  'CLERK',     7902,
      3  TO_DATE('17-DEC-1980', 'DD-MON-YYYY'),  800, NULL, 20);已创建 1 行。SQL>
      

  5.   

    SQL> select * from v$nls_parameters;PARAMETER                      VALUE
    ------------------------------ ------------------------------------------
    NLS_LANGUAGE                   SIMPLIFIED CHINESE
    NLS_TERRITORY                  CHINA
    NLS_CURRENCY                   ¥
    NLS_ISO_CURRENCY               CHINA
    NLS_NUMERIC_CHARACTERS         .,
    NLS_CALENDAR                   GREGORIAN
    NLS_DATE_FORMAT                DD-MON-RR
    NLS_DATE_LANGUAGE              SIMPLIFIED CHINESE  --这里是中文,脚本里面的月是英文的所以不认
    NLS_CHARACTERSET               ZHS16GBK
    NLS_SORT                       BINARY
    NLS_TIME_FORMAT                HH.MI.SSXFF AM
    NLS_TIMESTAMP_FORMAT           DD-MON-RR HH.MI.SSXFF AM
    NLS_TIME_TZ_FORMAT             HH.MI.SSXFF AM TZR
    NLS_TIMESTAMP_TZ_FORMAT        DD-MON-RR HH.MI.SSXFF AM TZR
    NLS_DUAL_CURRENCY              ¥
    NLS_NCHAR_CHARACTERSET         AL16UTF16
    NLS_COMP                       BINARY
    NLS_LENGTH_SEMANTICS           BYTE
    NLS_NCHAR_CONV_EXCP            FALSE已选择19行。SQL> select sysdate from dual;SYSDATE
    --------------
    13-12月-08SQL> alter session set NLS_DATE_LANGUAGE='AMERICAN'
      2  ;会话已更改。SQL> select sysdate from dual;SYSDATE
    ------------
    13-DEC-08SQL>
      

  6.   

    我还有问下,我以scott用户把执行了这句SQL  alter session set NLS_DATE_LANGUAGE='AMERICAN' 
    别的用户(fuyou开发的用户)会起作用吗,我机器上是开发的数据库,怕改了程序不能跑起来
      

  7.   

    我试了,两个用户没有影响
    非常谢谢 wffffc