回答数
気になる
-
oracleという会社の製品について教えてください。
oracleという会社の製品について教えてください。 私の会社では、システムが老朽化して、再構築すべきだという意見が出ているのですが、そこで問題になっていることがあります。 旧システムの開発を業界でも大手のF社に依頼したのですが、その結果、システムの端末に使うPCやサーバーもすべてF社から買うということが続いています。 F社自体は信用のある会社で問題はないのですが、そのような形で1社のPCやサーバーを買うことに制限されるということは今後避けたいという雰囲気があります。 そこである人に聞いたところ「oracleという会社のデータベースに関する製品がある。この会社の製品の仕様は業界標準だから、この仕様に基づいてデータベースを構築すれば1社に縛られることはないと思う。」ときいたのですが本当でしょうか? また、本当だとすれば、oracleという会社に直接頼むのか、システムを構築しようとするベンダー会社にたいして頼むんかどちらなのでしょうか? oracleという会社の製品やリレーショナルデータベースマネジメントシステムなるものについてもお教えくださるようお願いします。
質問日時: 2010/01/22 07:02 質問者: bbkanto
ベストアンサー
5
0
-
PL/SQLの初歩的な質問その2
失礼します。 先日は似たような質問でお世話になりました。 またPL/SQLについての質問です。 あるTBLに、以下のような感じでレコードが入っていたとします。 TESTtable test1(PK)(NUMVER型) test2(NUMVER型) --------------------------------------- 1 10 2 11 3 12 4 10 ここで以下のSELECT文を実行 SELECT test1 , test2 FROM TESTtable WHERE test2 = IN(10,12) この時、test2が10だったら20の数値に変換後test2として抽出し、 test2が12だったら22の数値に変換後test2として抽出する為には どのようなSELECT文になるでしょうか? 宜しくお願いします。
質問日時: 2010/01/20 21:51 質問者: hiro0907
ベストアンサー
1
0
-
Access→Oracleへ移行後MAX()が使えない
Accessで運用していたDBをOracleへ移行したところ、AccessのクエリでMAX()関数など集計系の関数が使えなくなりました。 エラーのSQL例: SELECT MAX(MESSAGE) FROM LOGDATA; ※MESSAGEはVARCHAR(2000) エラーメッセージ: 集計関数の引数(MESSAGE)にメモ型またはOLEオブジェクト型のフィールドを指定することはできません エラーを回避するにはどうすればいいのでしょうか? Microsoft Access 2003 Oracle 10g R2
質問日時: 2010/01/19 21:13 質問者: sdjfosaij
ベストアンサー
1
0
-
PGAとUGA
掲示板利用させて頂きます。 PGAとUGAがの違いがよくわかりません。 PGAはサーバープロセスごとに割り当てられる、専用のメモリ領域で UGAはセッションに割り当てられる専用のメモリ領域ということなのですが、意味があまりわかりません。 UGAは専用サーバー接続の場合PGAに含まれ、共有サーバー接続の場合はSGAに含まれるとのことですが、ますます??です。 UGAがセッションに割り当てられる領域ということは、例えばALTER SESSIONなので変更した初期化パラメータの値などが入っているのでしょうか?だとすれば共有サーバー接続時SGAにUGAが含まれると問題があるのでは・・。 どなたかご教示ください;;
質問日時: 2010/01/18 23:58 質問者: MACKA
ベストアンサー
1
0
-
こんなSQLを教えてください
こんなSQLを教えてください <更新前> テーブル1 |キー|コード| | 1| a| | 2| b| | 3| c| テーブル2 |キー|コード| | 2| B| | 4| D| <更新後> テーブル1 |キー|コード| | 1| a| | 2| B| | 3| c| こんなふうに テーブル1と同じデータがテーブル2にあったら テーブル1を書き換えるUPDATE文を教えてください
質問日時: 2010/01/17 22:57 質問者: trap1130
ベストアンサー
1
0
-
Oracle上のテーブルからCREATE TABLE文をGenerateする方法
Oracle上に既にあるテーブルからCREATE TABLE文を生成する方法はありますか? Oracle 10g R2 Enterprise Edition Windows 2003 Server Standard R2
質問日時: 2010/01/15 20:09 質問者: sdjfosaij
ベストアンサー
1
0
-
年度毎にシーケンスの初期化?
こんにちは あるプロジェクトでIDの連番を生成していますが、 年度毎に1から振り直します。 例:2009_001,2009_002... 2010_001... Oracleの順序(シーケンス)を使うとしたら、年度毎にどうやって順序を初期化するのでしょうか? そもそもこの場合、開発では順序を利用するべきではないでしょうか? よろしくお願いします。
質問日時: 2010/01/15 09:56 質問者: suzukika
ベストアンサー
1
0
-
PL/SQLの初歩的な質問
失礼します。 PL/SQLについて、初歩的な質問をさせてください。 DBに以下のような文字列が入っていて、 それを抽出し変数にセットするとします。 A'1234567'→変数aにセット B' 12A345B'→変数bにセット 質問1 Aの文字列を取得した際、'123-4567'のように 間にハイフンを付けて変数aにセットする場合 どのようなPL/SQLの記述になりますか? 質問2 Bの文字列を取得した際、'12345'のように 左側の空欄と数字以外の文字を取り、 なおかつ数字を半角にして変数bにセットする場合 どのようなPL/SQLの記述になりますか? お手数お掛けしますが ご回答宜しくお願いします。
質問日時: 2010/01/14 19:20 質問者: hiro0907
ベストアンサー
2
0
-
SQLでNOT INと!=ALLの違い
現在、仕事で使用する機会がありそうなのでOracleでSQLを勉強しています。 ある教本の練習問題をしていて気になったので質問させてください。 単純な受注に関するデータベースの問題です。 CUSTOMER_TとSLIP_Tというテーブルがあり、 CUSTOMER_Tは顧客コード、顧客の名前、顧客の住所が載っています。 SLIP_Tは受注番号、発注した顧客の顧客コード、受注した日が載っています。 2007年1月10日以降に受注したことのない顧客の名前を出力する問題なのですが私は以下のように解答しました。 SELECT CUST_NAME FROM CUSTOMER_T WHERE CUST_CODE != ALL(SELECT CUST_CODE FROM SLIP_T WHERE SLIP_DATE >= '2007-1-10'); しかし解答は以下でした。 SELECT CUST_NAME FROM CUSTOMER_T WHERE CUST_CODE NOT IN(SELECT CUST_CODE FROM SLIP_T WHERE SLIP_DATE >= '2007-1-10'); 自分で簡単なデータベースを作り試してみたのですが出力結果は同じになりました。 この二つのSQL文の違いにどのような問題があるのでしょうか?よろしくお願いします。
質問日時: 2010/01/13 22:19 質問者: winty
解決済
1
0
-
同一筺体にOracle 10g XE とOracle Clientを入れて動かしたい
■実現したいこと■ Oracle Database 10g Express Edition (Universal) Oracle Database 10g Express Client を同一筺体にインストールして、コマンドプロンプトからsqlplusを起動してDBを操作する ■行った事■ 「http://127.0.0.1:8080/apex/」の管理者画面からデータベース・ユーザー"HR"(サンプルユーザ)のアカウントステータスを 「ロック済」→「ロック解除済」にした。 ※HRユーザの権限は以下の通りです。 ユーザー権限 ロール: CONNECT ○ RESOURCE ○ DBA ○ 直接付与されたシステム権限: CREATE DATABASE LINK○ CREATE MATERIALIZED VIEW× CREATE PROCEDURE × CREATE PUBLIC SYNONYM× CREATE ROLE × CREATE SEQUENCE × CREATE SYNONYM ○ CREATE TABLE × CREATE TRIGGER × CREATE TYPE × CREATE VIEW × ■環境■ Windows Vista SP1 上記のようなやってコマンドプロンプトから sqlpulsを起動して、ユーザID(HR)とパスワードを入力した所 「ORA-12560: TNS: プロトコル・アダプタ・エラーが発生しました」 というエラーが出てしまいました。 何か足りない操作があるんでしょうか。それとも元々同一筺体にて使用できないんでしょうか。 どなたかご教授下さい。 よろしくお願い致します。
質問日時: 2010/01/11 22:28 質問者: bebestplay
ベストアンサー
1
0
-
いつもお世話になってます。
いつもお世話になってます。 他プロジェクトのまた聞きなのですが。。。。 oracle9iからoracle10gにバージョンアップを行いました。 数日後、数千万件にバインド変数でアクセスするSQLがインデックスを使用せず、フルアクセスしてしまい、トラブルとなりました。 この事象はCBOのデメリットなので、納得なのですが。 1.トラブル発生前は該当SQLはINDEX RANGE SCANを使用していた。 2.トラブル対処として、ヒント句を使用すると、INDEX FULL SCANになってしまい、結果として遅くなってしまった。 前置きが長くなりましたが、ヒント句を使用してINDEX FULL SCANになってしまった場合、明示的にINDEX RANGE SCANを適用させる方法はあるのでしょうか? ネット検索してもそのような方法を見つけることができませんでした。
質問日時: 2010/01/11 22:13 質問者: nekotaru
ベストアンサー
3
0
-
COL
COL COMMENTS FORMAT A44 SELECT * FROM DICTIONARY WHERE LOWER(COMMENTS) LIKE 'constraint%'; とありますが、検索した結果、TABLE_NAME列とCOMMENTS列が取得されています。 COMMENTS列には'Constraint definition …'というデータが取得されていますが、LOWER関数を使っているのに先頭が大文字になっているのは、なぜでしょうか? また、COL COMMENTS FORMAT A44と指定してから、SELECT を行っていますが、この'COL COMMENTS …'は、DICTIONARY のCOMMENTS列を44バイトに変更しているのでしょうか? データディクショナリには、ALL~、USER~,DBA~があるとありますが、DICTIONARYもデータディクショナリでしょうか? ユーザがアクセス可能な情報を格納したものであり、データベース管理者でなくてもアクセス可能な情報なのでしょうか? 接頭語が付いていませんがALLが付いたようなものでしょうか?
質問日時: 2010/01/11 18:35 質問者: aura999
ベストアンサー
1
0
-
中国語OSからのem表示言語
中国語OSからOracle Enterprise Managerにアクセスした場合に、 中国語で表示されてしまいます。 管理しづらいので日本語での表示を行いたいのですが、 何か方法はありますでしょうか。 以上、よろしくお願いいたします。
質問日時: 2010/01/11 10:26 質問者: yukimasumoto
ベストアンサー
1
0
-
UNDOデータは物理データベースの何処?
物理データベースはデータファイル、制御ファイル、REDOログファイルで構成されていますが、 UNDOデータは、REDOログファイルに格納されているのですか? 変更開始前のデータはREDOログファイルから取り出されるのですか? それとも、REDOログファイルからデータファイルにUNDOデータを作成して、データファイルから取り出しているのでしょうか?
質問日時: 2010/01/09 17:55 質問者: aura999
ベストアンサー
1
0
-
クライアントPCからのアクセス制限
現在oracle10gでDBを構築し、クライアントサーバでアプリケーションシステムを稼働しています アプリケーションはログインするユーザによってDBへのアクセス範囲を限定できますが SID,ユーザID、パスワードを入れてアクセスするオラクルツールではアクセス範囲を限定できません これに制限をかけることは可能でしょうか(たとえばPC側のプロセスを限定するとか) また、このような制限を可能にする良い案があれば御教示ください。
質問日時: 2010/01/09 10:48 質問者: Kouma-s27
解決済
6
0
-
ストアドプロシージャでのパラメータのデータ型の質問
いつもお世話になっております。たびたびの質問で恐縮です。 ストアドプロシージャでのパラメータのデータ型が設定できず困っております。たとえば次はパラメータの文字を表示させるものです。 CREATE OR REPLACE PROCEDURE test(p VARCHAR2(10)) IS t VARCHAR2(10); BEGIN t:=p; DBMS_OUTPUT.PUT_LINE(t); END; / コンパイルエラーになるので、パラメータのデータ型を、VARCHAR2のように(10)を取るとうまくいきます。しかし、変数定義の「t VARCHAR2(10)」の(10)を取ると文字列の制約制限からはずれるとのエラーになります。 VARCHAR2というのは、PL/SQLの変数あるいはパラメータではどのように記述すればよろしいのでしょうか。 基本的なことを理解しておらず、申し訳ありません。 どうか、よろしくお願いいたします。
質問日時: 2010/01/08 20:19 質問者: kisoyasa
ベストアンサー
3
0
-
アーカイブログファイル
OracleMasterの勉強をしていてわからないことがあります。 ご存知のかたがおられたら教えていただきたいです。 アーカイブログファイルについて書きのように説明されております。 「アーカイブログファイルはREDOログファイルのオフラインコピーであり、主にデータベースのリカバリに用いられる」 ここでオフラインコピーというのはどういう事なのでしょうか? オンラインコピーとオフラインコピーの違いがわかりません。
質問日時: 2010/01/08 18:14 質問者: cosboki
ベストアンサー
1
0
-
PL/SQL PLS-00103エラーについて
PL/SQL PLS-00103エラーについて 夜分遅くに申し訳ございません。 PL/SQLのコーディングを実施し、コンパイル中にPLS-00103エラーが発生してしまったのですが、 対処方法がわからず困ってしまいました。 ・メッセージ内容:”PLS-00103: 記号"="が見つかりました。” 上記メッセージで指定されていたソース内容(イメージ)↓ -------------------------------------------------------------- ・ ・ BEGIN LV_STEP := '**登録処理開始' -- 左記の:=の=部分がエラーメッセージで指定されていました。(LV_STEPはログ出力用の変数) CURSOR AAAA IS SELECT GG.EPLY_NO GG_EPLY_NO ,GG.R_CD GG_R_CD ,GG.S_CARD GG_S_CARD ・ ・ ・ FROM GRA_GRA_TR GG ・ ・ ・ ------------------------------------------------------------------ といった感じなのですが、 このPLS-00103エラーの対処方法をどなたかご教示いただけませんでしょうか。 よろしくお願いいたします。
質問日時: 2010/01/06 01:17 質問者: london1985
ベストアンサー
1
0
-
demo_proc.mk ファイルがない
Solaris10、Oracle10の環境です。 Pro*Cでコンパイルを行う為の参考makefileと思われる $ORACLE_HOME/precomp/demo/proc/demo_proc.mk などのファイルがありません。 demo_proc.mkはサーバー上のどこにもありません。 調べてみると、どうも、OracleのCompanionCDの中に 入っているようですが(?)、CDからこのファイルを取得する事は 可能でしょうか? (今手元にCDが無いのですが、後日取得予定です) 出来れば、ファイルだけ取得して、 インストールや環境等は変えたくありませんが そのような事も可能でしょうか?
質問日時: 2010/01/05 14:27 質問者: evaag777
ベストアンサー
1
0
-
クライアントからの接続の失敗
いつもお世話になっております。 Oracle11gをクライアントから接続できなくなり、対応がわからず困っております。 昨日まで問題なくクライアントから接続していましたが、サーバーのIPが変更されたせいか「接続タイムアウト」になり接続できなくなってしまいました。 listener.oraには (DESCRIPTION_LIST = (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521)) (ADDRESS = (PROTOCOL = TCP)(HOST = ××)(PORT = 1521)) の記述があり、Enterprise Managerの該当リスナーのページで確認すると(KEY = EXTPROC1521)が選択され、TCPを選択しても、IPCに戻ってしまいます。これは何か問題がありますでしょうか? またlistener.oraやtnsnames.oraの設定とか、どのあたりを確認すればよろしいでしょうか? お恥ずかしい限りですが、何卒よろしくお願いいたします。
質問日時: 2010/01/02 10:05 質問者: kisoyasa
ベストアンサー
4
0
-
PLSQLの識別子エラー
下記PLSQLを実行した時に(sqlplus上で、@XXXX.SQLと実行) WCOUNT :=WCOUNT + 1; エラー PLS-00201: 識別子WCOUNTを宣言してください のエラーがでます 宣言をしているのですがわからず、お助けください また、他にもこのエラーを処置したあとに問題と なりそうな箇所があれば指摘お願いします -やろうとしてること (1)テーブルA を、男子を出席順に読み込んでその読み込んだ順番に 1から番号をふり、テーブルBへ新規追加する (2)テーブルAからテーブルBに新規追加していない女子を、出席順に読み込んで 1から番号をふり、テーブルBへ新規追加する (3)テーブルBのKEYは順番のみ (4)テーブルBのINSERT分は、今後機能追加する予定なのでNOT IN使用する -組んだPL/SQL(2つのINSETを1つのファイルに記述しています) DECLARE WCOUNT number; CURSOR カーソル IS SELECT 出席番号,名前,成績 FROM テーブルA ORDER BY 出席番号; BEGIN FOR r IN カーソル LOOP INSERT INTO テーブルB (r.順番, r.名前,r.出席番号) VALUES (WCOUNT,r.名前); COMMIT; WCOUNT :=WCOUNT + 1; END LOO; / END; DECLARE CURSOR カーソル IS SELECT 出席番号,名前,成績 FROM テーブルA A WHERE A.出席番号 NOT IN (SELECT B.出席番号 FROM テーブルB B) ORDER BY 出席番号; BEGIN FOR r IN カーソル LOOP INSERT INTO テーブルB (順番, 名前) VALUES (WCOUNT,r.名前); COMMIT; WCOUNT :=WCOUNT + 1; END LOOP; / END;
質問日時: 2009/12/30 01:36 質問者: bancho_033
解決済
2
0
-
PL/SQLでFORの働き
たびたびお世話になります。Oracle初心者で、PL/SQLを使ってすでに存在するレコードに順位の値を入れようと思っております。 DECLARE CURSOR カーソル IS SELECT * FROM tb ORDER BY 成績; n number:=0; BEGIN FOR r IN カーソル LOOP UPDATE tb SET 順位=n WHERE 成績=r.成績; n:=n+1; END LOOP; END; FORというもの自体がわからず恐縮です。これは正しく、カーソルで定義したORDER BYの順に動くと考えてもよいのでしょうか。上記を実際にやってみると、うまく順位が入るようなのですが、これはたまたまなのでしょうか。 お恥ずかしい限りですが、どうかよろしくお願いいたします。
質問日時: 2009/12/29 03:07 質問者: kisoyasa
ベストアンサー
1
0
-
Javaでの接続について
ネット等をみるとOracle提供のJDBCドライバで接続する方法が載っていますが、oo4oを利用してJavaのプログラムからOracleにつなぐことは可能でしょうか? VBやVCの場合、oo4oを推奨していたと思うのですが、言語がJavaの場合はどうなのか調べてもよく分からないため質問させていただきました。 よろしくお願いいたします。
質問日時: 2009/12/28 14:25 質問者: uchan777
ベストアンサー
1
0
-
RANK関数で順位付けする方法
お世話になります。Oracle初心者です。RANK関数による順位付けについて悩み、検索してもわからず困っております。 次のような表tbがあります。 数値,順 70 10 30 この「順」のカラムに順位を付けて 数値,順 70,3 10,1 30,2 としようとしています。SELECTなら SELECT 数値,rank() over (order by 数値 desc) from tb; が成功します。これでupdateする場合、 (rank() over (order by 数値 desc))をした値を update tb set 順= とすればよいと思うのですが、うまくいきません。 PL/SQLを使わず、SQLでRANK関数を使って順位付けするにはどのようにしたらよろしいでしょうか。 勉強不足だと思い、申し訳なく思います。何卒よろしくお願いいたします。
質問日時: 2009/12/27 23:25 質問者: kisoyasa
ベストアンサー
1
0
-
Sqlplusでの接続に関して
掲示板利用させていただきます。 現在oracleのDBA1の勉強をしています。 sqlplusへ接続する際、as句を使用する意味がわかりません。 「connect sys/oracle as sysdba」の説明が、「sysdbaとして接続します」と参考書に書いています。 sysdbaは権限なのに、sysdbaで接続するとはどいういう意味なのでしょうか。sysユーザーにはsysdba権限が付与されているので、普通にas句を使わなくてもsysdba権限が必要な操作を実施可能と理解しています。 どなたかご教示いただけますでしょうか。
質問日時: 2009/12/26 16:27 質問者: MACKA
ベストアンサー
1
0
-
oinstallとdbaグループ、所有ユーザーについて
マニュアルでは、 Oracleインベントリ・グループのデフォルトは「oinstall」 OSDBAグループのデフォルトは「dba」 Oracleソフトウェア所有者ユーザーは通常は「oracle」 ですが、 自分はこれ以外で設定したことが無いのですが、 上記のOSグループとOSユーザーのデフォルト以外で、 (例えば、oinstallでなく、oins1とか、 dbaではなく、db1とか、 oracleでなく、ora1とか) にしても、問題は無いものでしょうか。 もし、ご存知の方いらっしゃいましたら、教えてください。
質問日時: 2009/12/24 18:32 質問者: pon2pon2
ベストアンサー
2
0
-
ユーザー情報、ステータス情報の条件によって取得するデータを制限したい
・データベース Oracle10g ・プログラム java 1.6 お世話になっております。業務でOracleを利用して以下のデータをしたいと考えています。 ★やりたいこと ・検索画面から、状態を指定し、次画面の検索結果画面で結果を表示したい。 ・検索条件は、状態のみ(本当はいろいろあるけどここでは割愛) ・ログイン時のユーザー情報を保持しており、画面で指定された'状態’と'ユーザー'をキーにデータを取得する ・係長、一般職、派遣のユーザーは "状態"が"本社承認済み"以降のデータしか見られない ・ただし、自分が登録・申請・承認に関わるデータは"本社承認済み"以前の状態のものも見られる ・上記の結果を一回のSQLで取得したい ■テーブル:予定情報 --------------------------------------------- 登録内容 | 登録者 | 申請者 | 承認者 | 状態・・・・ --------------------------------------------- AAAAAAAA |派遣 | 課長 | 部長 | 登録済み BBBBBBBB |一般職 | 係長 | 申請済み CCCCCCCC |派遣 | 一般職 | 課長 | 本社承認済み DDDDDDDD |課長 | 課長 | 部長 | 連携済み EEEEEEEE |派遣 | 派遣 | 係長 | 反映済み ※ユーザーが一般職の場合、登録内容AAAAAAAA以外のデータを取得する 派遣の場合は、登録内容BBBBBBBB以外のデータを取得する 係長の場合は、登録内容AAAAAAAA以外のデータを取得する ■ユーザー(登録者、申請者、承認者のデータ) 以下のユーザーが存在しています。 ・社長 ・部長 ・課長 ・係長 ・一般職 ・派遣 ■画面から指定可能な状態は以下の通り ・すべて ・登録済み ・申請済み ・本社承認済み ・連携済み ・反映済み ★わからないこと 検索画面で状態'すべて'が選択された場合に、 係長、一般職、派遣のユーザーについて状態"が"本社承認済み"以降のデータはすべて表示し、 自分が登録・申請・承認に関わるデータは"本社承認済み"以前の状態のものを取得するというSQL の条件指定をおこない際の構文がわからない。 状態が'登録済み'かつ、ユーザーが'派遣'の場合のSQLは以下ですが、 状態で'すべて'が選択された場合は、どのような構文になるのでしょうか? Selct * from 予定情報 where 状態 ='登録済み' and 登録者 = '派遣' and 申請者 = '派遣' and 承認者 ='派遣' なにとぞよろしくお願いいたします。
質問日時: 2009/12/24 12:34 質問者: tiyojisamu
解決済
1
0
-
OEMに接続できない
Solari10、Oracle10環境で Solaris10上でWEBブラウザで接続すると 「/IPアドレス/:との通信中に接続が拒否されました」 とのエラーが発生します。 IPアドレスへのpingは通ります。 dbconsoleは立ち上げてます。 何か分かる所はあるでしょうか?
質問日時: 2009/12/23 21:34 質問者: evaag777
ベストアンサー
1
0
-
こんにちは
こんにちは SQLで困っています>_<!! 曖昧検索をしたいのですが、大文字小文字、全角半角 関係なく、文字の並びが一致したら取得するようなことはできるのでしょうか? StudentテーブルのNAMEカラム↓ あああABCいいい あああAbcいいい あああABCいいい この時、条件に「NAME like '%ABC%'」としたら 全部引っかかるようにしたいんです。 SQLでこのような取得は無理なのでしょうか? Javaとうまく組み合わせて使いたいのですが。。 どなたかご指導宜しくお願いします。
質問日時: 2009/12/22 09:45 質問者: tnk3601
ベストアンサー
1
0
-
SELECT文でINを使わずに検索したい
DBはoracle10gです。 テーブル(A_TBL)は以下の4つのカラムで構成されています。 seq_no(連番),key_1(個人番号),key_2(更新日),status(状態) key_1が同一のレコードは、 最新のレコード(最新とは更新日の大きいレコード)以外のstatusを'0'から'4'にします。 例として実行前と実行後のテーブルは以下のような状態です。 【実行前】 seq_no,key_1,key_2,status 1,001,20080101,1 2,001,20080102,0 3,002,20080101,0 4,003,20080101,0 5,003,20080102,0 6,003,20080103,0 7,004,20080101,0 8,004,20080102,2 【実行後】 seq_no,key_1,key_2,status 1,001,20080101,1 2,001,20080102,0 3,002,20080101,0 4,003,20080101,4 5,003,20080102,4 6,003,20080103,0 7,004,20080101,4 8,004,20080102,2 以下のようなSQLを作成し、更新しようとしました。 update A_TBL set status = '4' where status = '0' and seq_no not in ( select wk2.seq_no from A_TBL wk2, (select max(key_2) as key_2, key_1 as key_1 from A_TBL group by key_1) wk1 where wk2.key_1 = wk1.key_1 and wk2.key_2 = wk1.key_2 and wk2.status = '0' ) このSQLはin句を使っていますが、 in句を使わずに同様の更新を実現することは出来るでしょうか?
質問日時: 2009/12/21 17:32 質問者: superss28
ベストアンサー
3
0
-
OFAに準拠しないOracleベースディレクトリの設定
Oracle10をインストールしますが、 OracleベースディレクトリはOFAガイドラインで /mount_point/app/oracle_sw_owner 上記のようなパスを使用するという推奨事項があるようです。 これに全く準拠しないOracleベースディレクトリを設定する予定ですが 何か不都合が発生するような事があるのでしょうか?
質問日時: 2009/12/21 16:30 質問者: evaag777
ベストアンサー
1
0
-
SQL初心者のため、初歩的な質問だと思いますが、回答お願いします。
SQL初心者のため、初歩的な質問だと思いますが、回答お願いします。 ●健康診断テーブル ID 回数 結果 ――――――― A 1 11 B 1 22 B 2 23 C 1 11 C 2 22 C 3 12 D 1 12 E 1 31 ●個人情報テーブル ID 所属 ――――― A 経理 B 総務 C 営業 D 営業 E 経理 上のような二つのテーブルがあります。 IDは人物の識別に使うIDで、同じIDなら同じ人を表しています。 健康診断テーブルの結果は、回数を重ねると変わってしまうこともあります。 この二つのテーブルから、所属ごとの結果を表示したいです。 上記の場合、以下のようなデータを出力できるようにしたいです。 所属 結果 人数 ――――――――― 経理 11 1 経理 31 1 総務 23 1 営業 12 2 どのようにプログラムを組めばいいのでしょうか。 グーグル等で検索しても、自分の理解できる解答は見つかりませんでした。 (自分のプログラムレベルがかなり酷く、わからないがわからないのレベルです) 今は初回・2回・3回と回数を変更するSQL文は作成できています。 すいませんが、回答お願いします。
質問日時: 2009/12/20 09:32 質問者: aochan1031
ベストアンサー
4
0
-
oracleのエクスポート
oracle10gで作成したエクスポートファイルをoracle9iにインポートしたいのですがoracle9i形式でエクスポートファイルを作成することは可能でしょうか。
質問日時: 2009/12/19 10:54 質問者: rsrsrsrsrs
解決済
2
0
-
パラメータファイルが壊れたときの対応
お世話になります。Oracle11gをWindowsVistaにインストールし、SQL、PL/SQLの勉強をしている初心者です。 ファイル操作の勉強をしようと思い、UTL_FILE_DIRの変更を試みたところ、データベースが起動しなくなってしまいました。databaseフォルダにあるoradim.logを確認したところ、次の記録がありました。 Fri Dec 18 00:30:04 2009 E:\app\taro\product\11.1.0\db_1\bin\oradim.exe -startup -sid orcl -usrpwd * -log oradim.log -nocheck 0 Fri Dec 18 00:30:04 2009 ORA-01078: failure in processing system parameters LRM-00109: ?p?????[?^?E?t?@?C??'E:\APP\TARO\PRODUCT\11.1.0\DB_1\DATABASE\INITORCL.ORA'???I?[?v?????????????B いろいろと検索してみたのですが、復旧方法がわからず困っております。お助けいただければ幸いです。 何卒、よろしくお願いいたします。
質問日時: 2009/12/18 22:34 質問者: kisoyasa
ベストアンサー
2
0
-
sqlplus で テキストファイルにつくったinsert文42行をコピーして
sqlplus で テキストファイルにつくったinsert文42行をコピーして SQLPLUSにはりつけると、28行目で、きれてしまいます。(28行目までinsertできている) なにか、set とかで設定しておかなければならないなどありますでしょうか。 お手数をお掛けしますが、どうぞよろしくお願い申し上げます。
質問日時: 2009/12/17 23:53 質問者: uff-n
ベストアンサー
2
0
-
SQLの書き方について
(1)の様なテーブルから結果を(2)の様にしたいのですが どのようなSQLを書いたら表示できるのかわかりません。 アドバイスなどをお願い致します。 (新たにView等を作成するなどでもかまいません。) (1)dept_id / item_id / day / time (カラム) 1111 / 0001 / 20090101 / 60 (レコード1) 1111 / 0001 / 20090102 / 30 (レコード2) 1111 / 0002 / 20090101 / 40 (レコード3) 1112 / 0001 / 20090101 / 30 (レコード4) (2)dept_id / item_id / time1 / time2 1111 / 0001 / 60 / 30 1111 / 0002 / 40 / 1112 / 0001 / 30 /
質問日時: 2009/12/17 14:41 質問者: potetoooo
解決済
2
0
-
AIX版の11.1.0.7からのPSR適用パスについて
お世話になっております。 AIX版で、11.1.0.1をインストール後、 11.1.0.7のバージョンまであげるには、 一旦、PSRで、11.1.0.6に上げてから、 11.1.0.7のPSRの適用が必要なのでしょうか。 わかる方いましたら、教えてください。 よろしくお願いいたします。
質問日時: 2009/12/16 09:53 質問者: pon2pon2
ベストアンサー
1
0
-
Oracle10gのデータベースの移行について
Oracle10gのデータベースの移行について質問です。 Oracle10g が稼動しているサーバ機があります。 老朽化の為、新しいハードウェアへ入れ替える事になりました。 OSは、入れ替え前も入れ替え後もWindows Server 2003です。 DB: Oracle10g → Oracle10g OS: Windows Server 2003 → Windows Server 2003 現行のサーバ上では4つのインスタンスが稼動しています。 新しいサーバ上に、同じ構成でそのまま移行する方法を検討していますが、下記のような方法で大丈夫なものでしょうか? (1)新しいサーバ上にOracle10gを初期データベースなしでインストールする (2)新しいサーバ上で新規のOracleインスタンスを4つ作成する (ORADIMツールを使用) (3)現行のサーバ上の各インスタンス・Oracle関連サービスを停止し、オフラインでデータベース関連のファイルのバックアップを取得する (4)現行のサーバから、新しいサーバへ、オフラインで取得したバックアップファイルを転送する (5)新しいサーバ上の各インスタンス・Oracle関連サービスを停止する (6)新しいサーバ上から、(3)で取得したファイルと同じファイルを削除する (7)新しいサーバ上で、バックアップしたファイルを現行のサーバと同じ位置に配置する (8)新しいサーバ上のOracle関連サービスと各インスタンスを起動し、動作を確認する どなたか、回答宜しくお願い致します。
質問日時: 2009/12/15 20:57 質問者: fz001
解決済
2
0
-
【ORACLE】ダイレクトロードインサートについて
現在、バッチ処理にて毎日、 まずテーブルを空にして、 そのあとインサートを行う作業をしています。 しかし、余りにもインサートに時間がかかってしまい困っています。 (2000万レコード程) 何か方法を探しているとヒント句の/*+ APPEND */を使用する ダイレクトロードインサートというものを知りました。 大量のデータインサートのケースには従来のインサートよりも 処理速度が向上できるのではと感じました。 ただし、注意点が何点かあり、表領域の使用効率が悪いという所が気になっています。 毎日DELETE、もしくはTRUNCATEを行えば問題ないのでしょうか? また、ダイレクトインサートを使用する上で懸念すべき点が他にあれば ご教授お願い致します。
質問日時: 2009/12/15 11:50 質問者: mayoke
ベストアンサー
2
0
-
SQLで順に絞込みを行う方法
はじめまして。初めて質問させて頂きます。 現在、システムを作成しています(開発が主業務ではありませんが)。 が、作成途中で詰まっていますので、ご教授願えれば、と思い質問させて頂きます。 いくつかの条件(氏名、内容、レベル)をユーザに入力してもらい、その条件に合致しているデータを抽出するSQLを発行したいのですが、なかなかうまくいきません。 現状では、上記3つの条件を全て入力すれば結果が反映されるのですが、1つずつで絞り込むことができません。 例えば、レベルの選択タブで「2」をユーザが選んだ場合、その条件に合致するあらゆる内容のレベル2の人が出てきてほしいのです。 また、内容で「攻撃」を選んだ場合、攻撃のレベルは関係なく全ての条件が出てきて欲しいのです。 カラオケで選曲をする際に機械を使うと思いますが、あのようなものを作成したいのです。 「ゆず」を検索する際に、「ゆ」を入れた時点で「ゆ」から始まるアーティスト名が抽出され、次に「ず」を入れると抽出件数が減ります。 あのような動作はSQLだけで行えるものなのでしょうか。 ネットで検索してもいまいち理解ができません。 どなたかご教授をお願い致します。
質問日時: 2009/12/14 15:14 質問者: ikego
解決済
3
0
-
SQL 外部結合について
EXCELでODBC接続で外部データを取り込み、クエリテーブルを作成するところまではできるのですが、MicrosoftQueryを使って外部結合をしようとすると、テーブルが3個以上ある場合は外部結合できませんとエラーが表示されます。 直接SQLをさわれば出来るのかと思い、 SELECT フィールド名1, フィールド名2, ... FROM (((TABLE1 LEFT JOIN TABLE2 ON TABLE1.NO = TABLE2.NO)LEFT JOIN TABLE3 ON TABLE1.NO = TABLE3.NO)LEFT JOIN TABLE4 ON TABLE1.NO = TABLE4.NO)LEFT JOIN TABLE5 ON TABLE1.NO = TABLE5.NO を入力したのですが、「ORA-00942: 表またはビューが存在しません」というエラーが発生しました。 いろいろ調べてみたのですが全くの初心者なもので本当に困っております。 どなたかアドバイス等よろしくお願いします。
質問日時: 2009/12/13 19:55 質問者: kep08
ベストアンサー
3
0
-
sql plusのダウンロードとインストール
会社でOracleのデータベースを使用しているので、自宅で勉強しようと思いネットで検索したところ、制限はつくものの無料で使用することができる Oracle 10g Express Editionというものを発見し、早速インストールしてみました。 しかし、会社の研修ではsql plusというもので、操作を行っていたのですがこのOracle 10g Express Editionにはsql plusが入っていませんでした もしかしてこのOracle 10g Express Editionではsql plusは使用することができないのでしょうか? 参考書として、現場で使えるSQLという本に、Oracleのインストール方法とsql plusの使用方法は書いてあるのですが この本でインストールしているものはoracle database 10g release 2という30日間のみ使用可能なトライアル版であり 今回私がインストールしたOracle 10g Express Editionの説明ではありません。 この本にはoracle database 10g release 2をインストールすると スタートメニュー→プログラム→oracle -oraclient 10g_home1→アプリケーション開発→sql plusとう順番でsql plus起動させることができますが、私のPCにはスタートメニューにsql plusはありませんでした。 どなたかOracle 10g Express Editionでsql plusを使用する方法を知っているかたはいないでしょうか? 長文かつわかりにく文章で申し訳ございませんが教えていただけると幸いです。
質問日時: 2009/12/13 10:19 質問者: okabocha
ベストアンサー
2
0
-
Solarisでイクスポートし、Windowsでインポートする
Solarisでエクスポートしたdmpファイルを Windowsへインポートしようとしたら IMP-00010:有効なエクスポート・ファイルではありません。ヘッダーは検証に失敗しました。 のエラーが出ました。 ファイルをFTPで取得する時、Windowsのコマンドプロンプトの FTPでそのまま行った為、アスキーモードで転送されたと考えてます。 ここで質問なのですが 1.アスキーモードで転送されたファイルをWindowsへインポート すると失敗しますか? 失敗する場合、このファイルを何か再変換みたいな事をして インポート可能なファイルにする事はできるでしょうか? 2.アスキーモードで転送されたこのファイルは、 同じSolarisマシンに対しては、インポート可能でしょうか? (Solarisのマシンは遠方にある為、再度取得が簡単ではないです。 何か分かりましたら、よろしくお願いします。)
質問日時: 2009/12/10 16:22 質問者: evaag777
ベストアンサー
1
0
-
特殊なレコードの取得方法
下記のようなテーブルがあり、 マスタの方は「*」が入っていれば、デフォルト行のような扱いをしたいのです。 ・テーブルの1のデータはマスタのAと完全マッチしているので、Aの行の値が欲しい。 ・テーブルの2のデータはマスタと完全一致はしないが、列4が「*」なのでBの行の値が欲しい。 ・テーブルの3のデータはマスタと完全一致はしないが、列3と列4が「*」なので、Cの行の値が欲しい。 現在は、マスタを別名で完全一致用(m1)、列4が「*」用(m2)、列3と列4が「*」用(m3)の3つをFrom句に記述し、 Select句にて、m1がNULLなら、m2から取得、m2もNULLならm3から取得するというやり方をとっていますが、 実際の「*」がある組み合わせがたくさんあり、それだけインラインビューを用意すると遅くなっているので、 なんとかインラインビュー1つでなんとかならないものでしょうか? テーブル ┌─┬──┬──┬─┐ │01│AAAA│X001│YY│←1 ├─┼──┼──┼─┤ │01│AAAA│X001│ZZ│←2 ├─┼──┼──┼─┤ │01│AAAA│X002│YY│←3 └─┴──┴──┴─┘ マスタ ┌─┬──┬──┬─┐ │01│AAAA│X001│YY│←A ├─┼──┼──┼─┤ │01│AAAA│X001│* │←B ├─┼──┼──┼─┤ │01│AAAA│* │* │←C └─┴──┴──┴─┘
質問日時: 2009/12/10 09:32 質問者: kurocky
ベストアンサー
3
0
-
SQL 複数テーブルのupdate
こんばんは。 複数テーブルの複数カラムをupdateしたいのですが、 うまくいかず困っています。 どなたか助けてください>_< テーブルA(tableA)のoptionAというカラムと、 テーブルB(tableB)のoptionBというカラムを両方更新したいんです。 やりたい内容のイメージとしてはこんな感じです↓ update tableA a, tableB b set a.optionA='OK', b.optionB='OK' where a.student_id=b.student_id and a.name='山田'; どなたかご指導お願いいたします。
質問日時: 2009/12/10 00:39 質問者: tnk3601
ベストアンサー
3
0
-
Oracle 11g ユーザー名およびパスワードが正しくありません。
Oracle 11gをインストールしたばかりです。 EMの画面からリスナーを選択し、停止ボタンを押そうとしました。 (あくまでも勉強のためです) ユーザー名およびパスワードが正しくありません。 とでてきてしまいました。 sqlplusにログインできるユーザ名/パスワードですが、うまくいきません。 SELECT username FROM v$session WHERE username IS NOT NULL; と打ってみましたが、そこででたユーザー名でも駄目でした。 どうか、ここで使われているユーザ名を確かめる方法を教えてください。 Windows XP SP3
質問日時: 2009/12/09 16:28 質問者: scorpio
ベストアンサー
3
0
-
ExpressEditionにNET8で接続
お世話になります。 Oracle10g Express Edition に、NET8経由でOO4Oで接続したいと考えています。 動作確認はできましたが、 ライセンス上の問題はありますでしょうか? (OTNではライセンスの話題はしないとのことで、こちらで質問いたします) ご存知の方おられましたら、ご教授いただければ幸いです。 よろしくお願いいたします。
質問日時: 2009/12/08 13:39 質問者: su1240
解決済
1
0
-
正規化?の戻しについて
お世話になってます。 データの結合SQLについて教えてください。 以下の2つのテーブルがあります。 <TBL1> KEY A B --- -- -- 111 A1 B1 222 A2 B2 333 A3 B3 <TBL2> KEY COL C --- --- -- 111 1 AA 111 2 BB 222 1 CC 222 2 DD 333 1 EE 333 2 FF 正規化?を行った結果このようになったようなのですが、運用では下記イメージで利用してます。 KEY A B C1 C2 --- -- -- -- -- 111 A1 B1 AA BB 222 A2 B2 CC DD 333 A3 B3 EE FF TBL1とTBL2から、このイメージを取り出すために前任者がPL/SQLの複雑なロジックで実現しているのですが、処理が遅い状態です。 SQLのみで実現できれば、もう少し早くなるのでは?と考えております。 いろいろ考えてみましたが実現方法が思いつかないため、お知恵をお貸しください。 TBL1は特に規則性もない普通のテーブルです。 TBL2は、TBL1のキーが必ず存在します。 COLは、キーごとに1,2が固定で設定されます。結合イメージのC1,C2項目に該当します。 TBL2の件数はTBL1件数*2になります。 以上、つたない説明ですが、よい手がありましたら、ご指摘お願いします。
質問日時: 2009/12/06 21:25 質問者: nekotaru
ベストアンサー
2
0
-
クライアントからのリスナーが動作しません
お世話になります。サーバーとクライアントが同じマシンでOrale Database 11gが動作している状態でOracleの勉強をしていました。今度は、同じネットワーク上にある別のVistaマシン(ultimate)にOrale Database 11g Clientをインストールし、クライアントからsqlplusを動作させようとしています。 Net Configuration Assistantで、リスナーを追加し、「ローカル・ネット・サービス名構成」でネットワークの設定をしました。 現在クライアントから「https://サーバー名:1158/em」でEnterprise Managerにアクセスできる状態です。また、Clientのインストール途中での、接続テストには成功しています。 コマンドプロンプトから「sqlplus」と入力すると、ユーザー名とパスワードが聞かれるのですが、「ERROR: ORA-12560: TNS: プロトコル・アダプタ・エラーが発生しました」と表示され、接続できません。 サービスには、「OracleOraDb11g_home1TNSListenerLISTENER1」などが表示されず、「lsnrctl start」も「lsnrctl status」もコマンド自体が解釈されません。 初心者でどうしてよいかわからず、大変申し訳ありませんが、お助けいただければ幸いです。どうか、よろしくお願いいたします。
質問日時: 2009/12/06 16:27 質問者: kisoyasa
ベストアンサー
1
0
-
オラクルマスターの取得は必ずブロンズから?
オラクルマスターを取得したいと考えています。 オラクルマスターは下位資格を取得していないと 上位資格を取得する権利はないのでしょうか? 例えば、10gのゴールドを取得したい場合 10gのブロンズ→10gのシルバー →10gのゴールドと順番に取得するのでしょうか? 知識があるからといって、いきなりシルバーや ゴールドを受講することは無理なのでしょうか? また、10gのゴールド資格保有者が11gのゴールドを 取得する場合は、バージョンアップ?の試験(資格)を パスすればよいのでしょうか? 講習などは再度受けなおす必要はないのでしょうか?
質問日時: 2009/12/06 12:07 質問者: chika0702
ベストアンサー
2
0
【データベース】に関するカテゴリ
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
最新のコラム/記事
-
タンス預金で旧紙幣を持ち続けるのは大丈夫?タンス預金のメリット・デメリットを紹介
今年7月、約20年ぶりに新紙幣が発行される。紙幣が変わることを改刷というが、この改刷には「タンス預金をあぶり出す目的があるのでは?」という見方をする人もいるという。「教えて!goo」にも「改刷で本当にタンス...
-
投資詐欺の手口や被害に遭わないためのポイント、被害後の対応策を弁護士が解説
新NISAが始まって間もなく半年が経過する。政府の旗振りの元、預貯金大国から脱却し、資産運用立国に向けた滑り出しは順調のようで、それはNISAの利用状況(2023年4月から2024年4月)を見ても明らかだ。 ・NISA口座...
-
メダロット:第247話「Vol.247※期間限定公開」
天才メダロッター六葉カガミの戦いを描く「メダロット再~リローデッド~」(漫画:伯林、監修:イマジニア)、20周年を迎えた『メダロット』が新たなストリーでココに再起動!!★全話無料で読める、週刊メダロット通信...
-
都内23区の火葬料金が6月からまた値上げ…(5万→7.5万→8万超→9万)なぜ?
都内23区には火葬場が合計9箇所あり、それらが区民の火葬のほぼ全てを支えているのだが、そのうちの6箇所(町屋斎場、四ツ木斎場、桐ケ谷斎場、代々幡斎場、落合斎場、堀ノ内斎場斎場)が6月から9万円に値上げをする...
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
データベースのカラムの型がCHAR型...
-
64bit端末でのOLEDB接続に関して
-
副問合せにLIKE文を使う方法はない...
-
oracleのimpdpでORA-39166
-
下記ロジックを満たすSQL(SELECT)を...
-
sqlで質問です。 aテーブルとbテー...
-
CASLⅡ 文字データから数値データへ...
-
videopad 無料版 アンインストール
-
複数レコードの完全一致
-
[Oracle] UPDATE分の副問い合わせに...
-
Oracle初心者です。 shutdownコマン...
-
インデックスの階層数によるパフォ...
-
テーブルやカラムの物理名のネーミ...
-
続.ORACLEのSELECTのソートについ...
-
子供向けプログラミングのスクラッ...
-
AとBは表からみてとれますが、「あ...
-
oracleの直接接続のクライアント接...
-
最近記憶や物忘れが激しくなってま...
-
macを再起動して、この画面から動か...
-
osqleditについて
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
副問合せにLIKE文を使う方法はない...
-
oracleのimpdpでORA-39166
-
batファイルでのSQL(oracle)実行...
-
ORA-14452について
-
バッチファイルで複数フォルダ毎の...
-
osqleditについて
-
64bit端末でのOLEDB接続に関して
-
データベースのカラムの型がCHAR型...
-
orace SQL文のエラー(ORA-00923: F...
-
質問です。 下記のテーブルとデータ...
-
ワークテーブルって何?
-
SQLの中上級者へのレベルアップ方法...
-
テーブルやカラムの物理名のネーミ...
-
SQL ブレーク処理について
-
SQL update方法
-
Oracleで文字列型の時間を引き算し...
-
SQL 2つのテーブルとSUBSTRINGの条...
-
複数レコードの完全一致
-
sqlで質問です。 aテーブルとbテー...
-
sqlで質問です。 Aテーブルの情報を...
おすすめ情報