質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

90.53%

  • PL/SQL

    65questions

    PL/SQL (Procedural Language/Structured Query Language) はOracle CorporationによるSQL(非手続き型言語)を手続き型言語に拡張させるために開発されたプログラミング言語です。

PL/SQLの移行方法

解決済

回答 1

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 112

pte

score 2

質問
PL/SQLを更新する場合、気を付けることは何ですか?
流す順番とかある気がして、心配です。
まったく知識がないので、常識レベルの更新方法から
ご教示いただけると助かります・・・。

状況
在庫管理システムのパッケージ改修をしています。
3つに分かれた開発環境のそれぞれで、システムの改修を行いました。
今は結合環境を作ろうとしていて、3つのそれぞれの環境にあるPL/SQLを
結合環境に揃えようとしています。

上司の指示は、
とりあえず、全部のPL/SQLを流しておいてくれ
でした。

私はPL/SQLをほとんど知らず、
ただ、ヘッダとボディに分かれていて、
ヘッダには変数の宣言等をしているというくらいの知識しかありません。

フォルダ構成はPL/SQLフォルダ下に3つくらいのフォルダがあり、
それぞれのフォルダには30,50,20程度のxxxx.SQLファイルが存在しています。

PL/SQL
業務
基本
xxx(名称忘れました)

これらのSQLをすべて流すという指示だと思うのですが、
PLSQLの基本的な考え方がないため、流す順番等、どうでもいいのかよくないのか、そこが知りたいです・・・。

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 1

checkベストアンサー

0

PL/SQLを更新する場合、気を付けることは何ですか?

更新とはプログラムの変更でしょうか?

ObjectBrowserで全部のPL/SQLを流しておいてくれ

sqlplusで現行のシステムからDDLをテキストファイルに取得 して、DDL中のスキーマ名が変わるなら該当部分を修正して、新システムにスクリプトを実行します。

ただ、ヘッダとボディに分かれていて、

PACKAGEとPACKAGE BODYのことですね。
PL/SQLにはFUNCTION, PACKAGE, PROCEDURE, SYNONYM, TRIGGERと無名ブロックがあります。

たとえば、あるFUNCTION1をコンパイルする時、FUNCTION1で使われているFUNCTION2があれば、FUNCTION2はコンパイルされてVALID(有効)な状態でないとFUNCTION1はVALIDになりませんから、Oracle Objectのコンパイル で強制的にコンパイルする必要があります。

短期間でもPL/SQLの熟練者を雇うなり、PL/SQLの有償研修に行かせてもらうように上長にお願いしては?

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2018/07/12 22:49

    回答、ありがとうございます!

    ■更新とはプログラムの変更でしょうか?
     それぞれの開発環境にあるSQLを、結合環境のDBに流すこと、という意図で書きました。
     調べたところによると、開発環境で作ったストアドサブプログラムを、Oracleに格納する、
     という言い方が一番正確な気がします・・・。

    ■短期間でもPL/SQLの熟練者を雇うなり、PL/SQLの有償研修に行かせてもらうように上長にお願いしては?
     私は未熟ながら、フリーランスのエンジニアとして客先常駐をしておりまして、そこでの私の担当者が、人のミスを喜ぶタイプでして、明確な指示をいただけなくて困っていました・・・。厳密にいうと、上司ではなく、他社から来た他社の技術者さんですね。わからないことはその人にお聞きするのですが、向こうにしても教える義務はないということで、つらく当たられてしまうことが多いです(もちろん私の知識不足が第一にあるのでどうにもならないのですが)


    現状、それぞれの環境で動作確認等がされたPL/SQLをcreateするSQLがGit上で管理されているので、すべてのSQLを更新したのち、全体コンパイルをかけて、エラーがなくなることを祈ろうかと思います。
    基本フォルダ下のSQLのみ実行したときに、いくつもコンパイルエラーが出ていたので不安になったのですが、すべてを実行すれば依存関係が充足され、問題なくなるといいのですが・・・。

    この方向での作業で、気になる点があれば、教えていただけると助かります・・・。

    キャンセル

  • 2018/07/12 23:15 編集

    派遣先の担当者の問題があるなら、その担当者の上司に改善を依頼しましょう。派遣会社を通しているなら派遣会社の担当者に相談されては?派遣会社は派遣されたpteさんを派遣先からの嫌がらせなどから守る義務があります。pteさんを守らない派遣会社なら会社を間違えたということでその会社は二度と使わないことにしましょう。

    Oracle SQLだけのスキルで募集したのにPL/SQLも無理やり押し付けられたのなら、PL/SQLの経験者を雇ってください、とお願いしましょう。
    PL/SQLの経験がないのにPL/SQLの熟練者を募集に応募したのなら契約途中でも降りた方が良いでしょう。

    わたしは今月は仕事が入っていませんが、サポート契約が有効で自分で直接オラクル社カスタマ・サポート・センターに問合せができる職場できないと断わります。

    派遣先の担当者がいつ○○の指示をしたが、○○が不明確だったので仕事が何時間遅れた、といった情報は記録しておきましょう。後日、問題になった時の証拠になります。

    キャンセル

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 90.53%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る

  • PL/SQL

    65questions

    PL/SQL (Procedural Language/Structured Query Language) はOracle CorporationによるSQL(非手続き型言語)を手続き型言語に拡張させるために開発されたプログラミング言語です。