- PR -

oracleの表作成について

1
投稿者投稿内容
トムソン
常連さん
会議室デビュー日: 2005/07/01
投稿数: 22
投稿日時: 2006-04-01 13:36
oracle10gを勉強していますが、
表の作成を行うのに、すごく手間がかかってしまいます。

create tableで作成していきますが、
create table 品番 (
品番 varchar2(20) primary key,
入庫数 number (10),
出庫数 number (10),
)
このように入力していくと思いますが、項目が、50近くある場合も、
すべて入力していく必要があるのでしょうか?
途中で入力を間違えるとエラーとなり、最初から作成する必要があるのですが、
何か良い方法ってありますか?
いろいろしらべたのですが、簡単なやり方がわかりませんでした。


 
もしもし
ぬし
会議室デビュー日: 2004/10/15
投稿数: 280
投稿日時: 2006-04-01 13:42
引用:

トムソンさんの書き込み (2006-04-01 13:36) より:

このように入力していくと思いますが、項目が、50近くある場合も、
すべて入力していく必要があるのでしょうか?




「すべて入力」っていうのが意味不明です。
50 列作るのであれば、50 列の名前とデータ型を指定する必要がありますが何か。

そもそも 50 も列を作らなければならないというのも、設計上いかがなものかと。

_________________
もしもし@RMAN 友の会
minminnana
大ベテラン
会議室デビュー日: 2004/02/05
投稿数: 246
お住まい・勤務地: 盛岡
投稿日時: 2006-04-01 14:31
引用:
途中で入力を間違えるとエラーとなり、最初から作成する必要があるのですが、


sqlplusとかで直接入力しているという事でしょうか?
入力済みのコマンドを呼び出して編集することもできますが、
予めテキストファイルにでも書いてそれを呼び出すと良いかと思います。
さしあたって、sqlplusを起動するパスにhoge.sqlとかで作成し、
sqlplusから@hoge.sqlで呼び出せると思います。
あんとれ
ぬし
会議室デビュー日: 2004/01/14
投稿数: 556
投稿日時: 2006-04-01 14:41
引用:

minminnanaさんの書き込み (2006-04-01 14:31) より:

入力済みのコマンドを呼び出して編集することもできますが、
予めテキストファイルにでも書いてそれを呼び出すと良いかと思います。
さしあたって、sqlplusを起動するパスにhoge.sqlとかで作成し、
sqlplusから@hoge.sqlで呼び出せると思います。



簡単な例を提示しましょう。OS が書かれていないので、Linux を仮定します。
(Oracle は Linux や Solaris ベースで開発されているようですので)
Windows とかでも使用するエディタやプロンプトが違うだけで操作は一緒です。

------------------------------------------------------------------------
$ vi hinban.sql

drop table 品番;

create table 品番 (
品番 varchar2(20) primary key,
入庫数 number (10),
出庫数 number (10),
......
);

$ sqlplus user/pass
......
SQL> @hinban.sql

ORA-00942 table or view does not exist

Table created.

SQL>
------------------------------------------------------------------------

ちなみに、表名や列名に日本語を使うことはお勧めしません。


[ メッセージ編集済み 編集者: あんとれ 編集日時 2006-04-01 14:43 ]
トムソン
常連さん
会議室デビュー日: 2005/07/01
投稿数: 22
投稿日時: 2006-04-03 13:03
引用:
--------------------------------------------------------------------------------


minminnanaさんの書き込み (2006-04-01 14:31) より:

入力済みのコマンドを呼び出して編集することもできますが、
予めテキストファイルにでも書いてそれを呼び出すと良いかと思います。
さしあたって、sqlplusを起動するパスにhoge.sqlとかで作成し、
sqlplusから@hoge.sqlで呼び出せると思います。

--------------------------------------------------------------------------------
ありがとうございます。
一度作成してから、実行してみようと思います。
ちなみに、OSはWindowsServer2003です。

あんとれ
ぬし
会議室デビュー日: 2004/01/14
投稿数: 556
投稿日時: 2006-04-04 23:51
sqlplus ですと、エディタを設定できます。

SQL> define _editor=vi
SQL> ed

これで、vi エディタで編集できます。
環境が書かれていないので、Oracle のベースとなっている Linux や Solaris を前提としての回答となりますが。

あと、ログイン時の設定は、$ORACLE_HOME/sqlplus/admin/global.sql に追加することでいつでも有効にすることができます。

例えば、

set sqlprompt='SQL(&_connect_identifier)> '

など。これで、プロンプト表示に接続文字列を追加できます。


[ メッセージ編集済み 編集者: あんとれ 編集日時 2006-04-04 23:53 ]
1

スキルアップ/キャリアアップ(JOB@IT)