Mr.King's的专栏

.net疯狂学习中...... 一切从基础开始.
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

oracle数据库基本建数据库和查询步骤

Posted on 2005-04-11 12:32  探索  阅读(1344)  评论(0编辑  收藏  举报

1、   启动SQL*Plus

 

SQL*Plus对于ORACLE  RDBMS环境来说是一个交互的字符模式工具,是一个关于ORACLE  RDBMS的即时、交互终端接口程序。由于在实验室里面是直接把自己的主机作为服务器使用,所以不用填写连接主机字符串,直接使用最大权限的用户登录:用户名:system,密码:manager.

a,对于sql*plus的很多命令不是很清楚的可以使用以下命令进行安装帮助文件Sql>@ ?\sqlplus\admin\help\hlpbld.sql ?\sqlplus\admin\help\helpus.sql

然后敲入Sql>help index,这样就会显示出所有可以执行的命令。

b,输入查询语句“select * from cat”,可以显示数据库系统中先存在的表。

c,执行完毕后,输入quitexit命令,返回到windows界面。

 

2.创建CAP数据库

 

a,进入到sql* plus,创建4张表,过程如下:

SQL>create table customers(cid char(4) not null, cname varchar(13),

2         city varchar(20), discnt real, primary key(cid));

Create Table语句的结果是创建了一张带属性cid, cname, citydiscnt的空customers表。

 

SQL>create table agents(aid char(3) not null, aname varchar(13),

2  city varchar(20), percent smallint,  primary key(aid));

SQL>create table products(pid char(3) not null, pname varchar(13),

    2  city varchar(20), quantity integer, price double precision, primary key(pid));

SQL>create table orders(ordno integer not null, month char(3),

2  cid char(4) , aid char(3), pid char(3),

3  qty integer, dollars double precision, primary key(ordno));

同理创建了agents,products,orders表。

 

b,如果要看自己是否已经创建好了这四张表,可以使用以下语句进行查询:

SQL>select TABALE_NAME FROM CAT WHERE TABLE_NAME=” CUSTOMERS”,等等,这样就会显示出是否创建了customers表。其他的表的查询同理。

c,如果确认已经创建了所需要的表,还可以使用SQL>desc table_name进行查看建立的表的结构。

 

3.使用SQL*Loader导入数据:建立控制文件和数据文件

 

首先建立控制文件custs.ctl内容如下:

load data

replace

into table customers

fields terminated by ","

(cid,cname,city,discnt)

 

 

然后建立数据文件custs.dat内容如下:

c001,Tiptop,Duluth,10.00,

c002,Basics,Dallas,12.00,

c003,Allied,Dallas,8.00,

c004,ACME,Duluth,8.00,

 c006,ACME,Kyoto,0.00,

最后运行SQL*Loader,命令:(这个命令在ORICLE9文件夹的bin目录里面,sqlldr.exe命令)

Sqlldr userid=username/password  control=custs.ctl(不在同一个文件夹下则要输入完整的目录路径)

 

4,使用SQL*Plus来查询

 

SQL>select * from customers

Where  cname=’Tiptop’;

SQL>list  (显示当前缓冲区中的命令)

SQL>1     (显示当前缓冲区第一行的命令,使第一行为当前行)

SQL>c/customers/agents (将缓冲区当前行中的字符串customers换成字符串agents

SQL>del 2     (删除缓冲区中的第二行的命令)

SQL>/       (执行缓冲区的SQL语句)

Google