Oracle8i のDBA Studioで数十の表を作成したのですが、ここからテーブルの作成スクリプトを出そうとして困りました。いわゆる Create Table文なのですが、これを自動で簡単に作る方法はないでしょうか?SQL-ServerのEnterprise Managerでは、SQLスクリプトの作成があって、Create文を簡単に生成できるのですが、これと同じような感覚で、既に作成してあるテーブルのCreate文を出力する方法はないでしょうか?Oracleには、ほとんど慣れていないので、方法があると思うのですが、探し方が悪いらしく途方にくれています。どなたかよい方法を御存じないでしょうか。

このQ&Aに関連する最新のQ&A

A 回答 (2件)

Exportユーティリティは、通常はコマンドプロンプトから起動します。


Oracle8iの場合は "exp"
Oracle8.0の場合は"exp80"
だったと思います。

コマンドの後にログインID/パスワード、オプションパラメータを色々と
設定します。DBA StudioのようにGUI操作ではありませんが、Oracleは
本来はコマンドラインからコマンドを入力するのが、本来の操作方法です。

これを機会に、コマンドでOracleを操作する方法も勉強されてはどうですか?


#Oracleは、本来はプロフェッショナル向けのデータベースソフトです。
#初心者向けの簡単な操作方法を希望するのならば、他のDBに
#乗り換えた方がいいでしょう。
    • good
    • 0
この回答へのお礼

おおっ、なるほど。あっさり解決致しました。私は元々MS-DOSに慣れているので、コマンドの方が好きです。こういうツールがあることを知らなかったのですが、便利ですね。ありがとうございました。

お礼日時:2001/12/21 08:50

OracleのExportユーティリティで、テーブルの構造だけを出力することが


可能です。その際、パラメータshow=yと指定すると、個々のテーブルの
Crease Table文を確認できます。

Exportユーティリティの詳細については、Oracleのマニュアルを参照して
ください。

この回答への補足

回答ありがとうございます。もう少し教えて下さい。DBA Studioのツール-データ管理-エクスポートだろうと思われますが、実行しようとすると、「このウィザードは、アプリケーションがOracle ManagementServer(OMS)に接続されている場合のみ起動できます。アプリケーションを起動してOMSに接続してから、ウィザードを起動してください。」とエラーメッセージが出て先に進めません。DBA Studioは、スタンドアロンで起動してノーマルで接続しています。OMSに接続しないとダメでしょうか?ちなみに、データベースは8(8iではない)で、少し古いタイプなのですが。この場合、どうすればエクスポートツールが使えるようになるのでしょうか?

補足日時:2001/12/20 20:29
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す

このQ&Aと関連する良く見られている質問

QOracleのCreate Table 文のStorage句

お世話になります。

OracleのCreate Table 文のStorage句のNextの値を
変更したいのですが、できるのでしょうか?

Alter Table文で変更するのでしょうか?
手元にマニュアルが無く困っております。

よろしくお願いします。

Aベストアンサー

alter table テーブル名 storage ( next 変更後のサイズ );

だっけかな?

QSQL文でテーブル作成 Access2002

MySQLで
create table testm (
key1 char(008) primary key,
data1 int8,
data2 int8,
data3 int8
) type=InnoDB;

という風なSQLでテーブルを作成したりしますが
Accessでは無理なのでしょうか?

よろしくお願いします。

Aベストアンサー

Sub テーブル作成2()

Dim db As DAO.Database 'Microsoft DAO 3.6 Object Libraryの参照設定必要

Set db = CurrentDb

db.Execute "CREATE TABLE testm" & _
"(key1 TEXT(8) CONSTRAINT キーの名前 PRIMARY KEY," & _
"data1 INTEGER," & _
"data2 INTEGER)"

db.Close
Set db = Nothing

End Sub

Qあるテーブルの内容を基準にして違うテーブルを更新するSQL文

教えて下さい。

あるテーブルに下記の内容があります。
ID│名称
─┼───
1│花
2│木
3│水

もうひとつのテーブルには、
ID│名称
─┼───
1│海
3│水
4│空
となっています。
最初のテーブルの全レコードを対象に、最初のテーブルのIDと同じ値がもうひとつの
テーブルにある場合、もうひとつのテーブルをUPDATEし、存在しなければINSERTしたい
です。
結果を
ID│名称
─┼───
1|花
2│木
3│水
4│空
を期待しています。

このようにするSQL文を教えていただけませんでしょうか。
よろしくお願いします。

Aベストアンサー

良く似た質問が過去に有りました。
回答2がぴったりだと思います。
参考にしてください。

参考URL:http://oshiete1.goo.ne.jp/kotaeru.php3?q=604829

Qテーブル、インデックスのCREATE文について

ObjectBrowserを使用すると標記のソースが参照できますが、これをデータディクショナリから拾おうとするとどのようなSQLでできるのでしょうか?

マニュアル等いろいろ調べましたところ、各情報を項目として捕まえることはできそうなのですが、CREATE文として取得する方法は探し当てれませんでした。

どなたかご存知の方、よろしくお願いします。

Aベストアンサー

各項目をとってきて、ObjectBrowserがつなげてるだけだと思います。

フィールド数などはフェッチしないとわからないので、
これをSQLで全部連結するのは不可能です。

Qoracleで別のグローバルデータベースのテーブルからPL/SQLでデータをinsertする方法。

こんにちは。

別の場所に設置してあるoracleのデータベースからinsert文でデータを引っ張って来れないかと思っています。

ご存知の方いらっしゃれば宜しくお願い致します。

内容:
ここのoracleです。
グローバルデータベース名:testa.ok.com
(データベース名:testa)
スキーマ名:output
テーブル名:名称マスタ
項目内容:番号、名前
ユーザ名:tosi
password:tosi

あっちのoracleです。
グローバルデータベース名:testb.ok.com
(データベース名:testb)
スキーマ名:input
テーブル名:名称マスタ
項目内容:番号、名前
ユーザ名:tosi
password:tosi

PL/SQLで出来ないものでしょうか?
宜しくお願い致します。

Aベストアンサー

こんにちわ。

データベースリンクを使用すれば可能です。
まず、あっちのデータベース (testb.ok.com) に接続
するための接続文字列をtnsnames.ora に定義します。
→ sqlplus tosi/tosi@接続文字列 でtestb.ok.com
  に接続できる事を確認して下さい。

次にtesta.ok.com 側にデータベースリンクを作成します。
Create database link DBリンク名
 connect tosi identified by tosi using '接続文字列';
→ select ~ from input.名称マスタ@DBリンク名
  where ~
 で、データベースリンク経由でデータにアクセスできること
 を確認して下さい。

後は、SQL 文 (PL/SQL でも可) の中で
Insert into 名称マスタ select * from
 input.名称マスタ@DBリンク名 where ~;
とすれば、Ok です。


人気Q&Aランキング

おすすめ情報