1 名前:ますっち mailto:m_mitsuo@naver.co.jp [03/07/24 01:08] 初心者から管理者までオラクルでわからないことは ここの皆で解決していきましょう!!! 前スレ・関連サイト:>>2
175 名前:デフォルトの名無しさん mailto:sage [03/10/17 17:45] とりあえずエディタで開いてみればぁ
176 名前:デフォルトの名無しさん [03/10/17 19:14] oracle 9i Lite(トライアル版)というのをダウンロードして windows2000のPCにインストールしてみた。 Oracle Universal Installerで Mobileサーバーというのと MobileDevelopmentKit というのをインストールした。 それで、このPCだけで(スタンドアローン) データベースというものを 使ってみたいだけなんだけど、この後何をすればいいのかさっぱりわからん。 何を読んだらいいのか教えてけろ・・・ちなみに試用期間は30日なので 切れないうちに教えてください・・
177 名前:デフォルトの名無しさん mailto:sage [03/10/18 01:31] Liteじゃだめ
178 名前:171 mailto:sage [03/10/18 10:37] >>173 助かりました。 ありがとうございました。
179 名前:デフォルトの名無しさん mailto:sage [03/10/19 02:57] >>174 実データはインポートしないでimpのログだけ吐かせるオプションってなかったか? 何のスキーマをどこに突っ込もうとしようとするダンプなのか知るのに使ってた気が するんだが・・・
180 名前:169 mailto:sage [03/10/20 03:12] >>170 またもや、おそくなったけど 9iの部屋の「to_dateの結果が正しいか判定するSQL? 」という 一連のスレッドがそれじゃないかと思われます。
181 名前:デフォルトの名無しさん [03/10/22 20:23] >>180 どうもありがとう。 to_date以外でも使えそうな良いアイデアだな。 thx
182 名前:デフォルトの名無しさん mailto:sage [03/10/23 00:07] 勉強用に安価に入手できるバージョンはありますか?
183 名前:デフォルトの名無しさん mailto:sage [03/10/23 00:25] hxxp://otn.oracle.comから無料でどぞ。>>182 PSRとかは手に入らないけど必要ないでしょ。
184 名前:デフォルトの名無しさん [03/10/23 11:32] 30日間トライアル版しか無いの?<無料
185 名前:デフォルトの名無しさん [03/10/23 12:11] >>184 無料といったら期間限定のトライアル版しかないと思いますが・・・
186 名前:デフォルトの名無しさん [03/10/23 12:15] >>183 hxxp?
187 名前:183 mailto:sage [03/10/24 01:25] いいからOTN行ってLicense Agreement読んでみ。英語がわからんとかいうヘタレは諦めれ。 直リンすんなゴルァ、を回避するためですが何か?>>186
188 名前:デフォルトの名無しさん mailto:sage [03/10/24 05:17] >>187 ttp://じゃないのはなぜ?
189 名前:デフォルトの名無しさん [03/10/25 00:04] >>188 そんな形式にこだわるのは何故?
190 名前:デフォルトの名無しさん mailto:sage [03/10/25 00:57] hxxp,fxpってのは英語で情報交換してる掲示板でよく見かける直リン回避の仕方だね。 リバースエンジニアリングやってる奴ら(特にブラックハット)が好んで使ってる。 スレの趣旨からずれまくってるのでsage。
191 名前:デフォルトの名無しさん mailto:sage [03/10/27 00:04] >>189 2ちゃんブラウザのたぐいはttp://も クリッカブルになるからでしょう。
192 名前:デフォルトの名無しさん mailto:sage [03/10/27 08:39] んな自分勝手な・・・。
193 名前:デフォルトの名無しさん mailto:sage [03/10/27 22:53] >192 ↑こうレスするのを嫌がる人もいる。
194 名前:デフォルトの名無しさん mailto:sage [03/10/28 20:07] それまた自分勝手な・・・。
195 名前:デフォルトの名無しさん [03/10/31 16:41] Web帳票もどきのシステムを作ることになったんですが、書き込み欄に 文字数で全角50000文字まで入るようにとか言われてます。(しかも複数) varchar2では4000byteまでしか扱えないし、テーブルのカラムのほとんどを ラージオブジェクトにするのも違う気がします。皆さん、こういうのはどうして ますか? つか、普通にテキストファイルに保存したほうがいいのではとも思ったんですが 上司がデータベースに拘っているので…。
196 名前:デフォルトの名無しさん mailto:sage [03/10/31 17:02] テキストファイルに落としてポインタをDBに入れときゃいいじゃん…
197 名前:デフォルトの名無しさん [03/10/31 17:18] >>195 俺は使わないけど、 LONG使ってみて。 どうなったかも報告して。
198 名前:デフォルトの名無しさん mailto:sage [03/10/31 18:47] >>195 ORACLEのバックアップで一緒に済ませたいんだろ?>上司 ファイル名をDBに保存、テキスト保存。 バックアップは別途用意し説得するのが一番だろうなあ
199 名前:デフォルトの名無しさん [03/10/31 19:13] 1列が100KBでそれが複数列でとなると やはり外に置くか、LOBにするかだろうな。 LONGでもPL/SQLだと32760byteだし 何で入れるかに依ってごちゃっとするよね。 その文字を入れるとして、どれくらいの種類の 文章を入れるかというのもあると思うし その列をどう使うのかなぁ?
200 名前:デフォルトの名無しさん [03/10/31 20:00] 上司ってエンジニア?一本毛の生えた素人?
201 名前:デフォルトの名無しさん mailto:sage [03/10/31 20:29] 一本も毛の生えてない素人じゃないか?
202 名前:200 [03/10/31 22:00] やっぱり、毛という毛は1本も生えてない素人か
203 名前:デフォルトの名無しさん [03/10/31 22:48] SEだからといって、一般人より何か知ってるかというと・・・なことも多いこの業界。
204 名前:デフォルトの名無しさん mailto:sage [03/10/31 22:59] でも「素人か」って鼻で笑っちゃあSE失格だよな。 データベースに拘ってるっていうところをそのまんま 鵜呑みにしたり、理由を勝手に憶測したりしないで、 もう少し掘り下げてインタビューして顧客の真の要件を 明らかにしよう。
205 名前:195 mailto:sage [03/10/31 23:01] >>196 ,198 自分も少し考えたんですが、データベースと別に保存というのは設計として どうなのよと思ったので自己却下しました。 そんなにおかしなことではなかったんですね。ありがとうございます。 >>197 ありがとうございます。 LONG型は1項目までしか定義できないようなので諦めましたです。 >>199 多少扱いは面倒ですが、慣れてもいるのでLOBしかないかなーと思っています。 ちなみに内容は会議の議事録と、偉い人たちのコメント等々です。 いまのところ、キーに対応した文章が閲覧できればいいようですが、全文検索 なんて言われたら…(;´Д`) >>200 この道30年のベテランエンジニアを自称していますが、業務経験は20年前にN88-BASIC のみという凄腕です。頭髪はだいぶ薄いですが、かろうじて残っています。
206 名前:デフォルトの名無しさん mailto:sage [03/10/31 23:47] >>205 ひょっとしてNUL?
207 名前:200 [03/11/01 08:04] >>204 SEか素人かが問題ではない。 毛があるかどうかが問題だ。 大体オマイは、2ちゃんで匿名相手にインタビューして、 真の要件解析をするのか? そんなことより、>>205 より毛が生えてるエンジニアということが解析された。 俺にとっては十分な答えだ。
208 名前:デフォルトの名無しさん mailto:sage [03/11/01 10:35] 2chで言葉を選んでどうする 簡潔に、「ハゲは馬鹿ばっか」 でいいだろ
209 名前:200 [03/11/01 11:07] >>208 ありがとう。その通り。
210 名前:204 mailto:sage [03/11/01 13:11] >>207 当然、要件分析すんのは>>195 だ。 つか、なんで>>200 が反応するんだ?
211 名前:200 [03/11/01 13:22] >>204 暇だったから。ゴメンチャイ
212 名前:デフォルトの名無しさん mailto:sage [03/11/01 13:48] スレスト依頼でもしてくるか。
213 名前:デフォルトの名無しさん [03/11/02 13:17] すいません、SQL質問スレが見つからなかったのでここで質問させてください。 主キーにSequenceを使って連番振るときに、どれくらいのサイズにしておくものなんでしょうか? もちろん要件によるのでしょうが。 例えば、登録件数は少ない(数100件程度)が、頻繁に追加・削除が行われるようなテーブルの場合 はどうしておくものなのでしょうか? 主キーに6桁ほど取っておいて、MAXVALUE=999999にしてCYCLEにしておく? でもinsert時にキーがぶつかったら? エラー処理で、insetが成功するまでnexvalで値をとり続ける? そんなコーディングって一般的なの? ・・・普通はどんなカンジにしておくものなんでしょう???
214 名前:デフォルトの名無しさん mailto:sage [03/11/02 15:32] ハァ?
215 名前:213 mailto:sage [03/11/02 16:55] >>214 やっぱ考え方自体がおかしい?
216 名前:デフォルトの名無しさん [03/11/02 19:57] >>213 その程度の件数であまりSequenceなんて使ったことないけど。 世の中には、4件しか無いテーブルにインデックスはる人もいるからなぁ。
217 名前:213 [03/11/02 21:31] >>216 そ、そうなんですか。 この程度の件数だと普通どうやって連番振ってるものなんでしょうか? すみません。あんまりこーゆー事を考えて使ったことがないもので。。。
218 名前:デフォルトの名無しさん [03/11/02 21:49] >>217 何のために、それをするの?
219 名前:213 [03/11/03 01:40] >>218 うまく言えないんですけど・・・ あるシステム上でユーザが任意で作成できる オブジェクトを管理するためです。 OSのファイル管理と同じようなものだと思っていただければ良いかと。 ファイルに対してユニークなキーを振るようなイメージです。
220 名前:デフォルトの名無しさん mailto:sage [03/11/03 01:51] ユニークなキーを得るというのと連番を得るのは別次元でかんがえたら?
221 名前:213 [03/11/03 02:09] あ、すみません。217で"連番"って書いちゃってましたね。。。 はい、別に連続した番号でなくても良いです。ユニークでありさえすれば。 ユニークなキーを採番するためにSequenceを使うのかなと思ったのですが、 使い方間違ってるのでしょうか???
222 名前:デフォルトの名無しさん mailto:sage [03/11/03 03:30] DB板でやればいいのに・・・
223 名前:デフォルトの名無しさん mailto:sage [03/11/03 07:48] キーとして使うんなら、おなじキー値を再利用しなくても済むように考えた方が楽。
224 名前:デフォルトの名無しさん mailto:sage [03/11/03 18:57] rowidって知らんの?
225 名前:デフォルトの名無しさん [03/11/03 19:02] >>224 数百でrowidはでかくないか?
226 名前:デフォルトの名無しさん [03/11/03 21:40] >>221 よくわからないけど、その数字を使うのかどうか。 使わないならSequenceなんて考えなくても uniqueはuniqueだ。 その数字を何かに使うのであれば そんなに重要な項目だったら テーブルに一つnumber型の列を加えて unique制約なりprimaryつけて、そこで管理するね。
227 名前:のぶきち [03/11/03 22:20] オラクル初心者です。 オラクルというよりSQLに関しての質問なのですが、 SQLポケットリファレンスに載っておらず、困りはてています。 AというテーブルにUPDATEをかけたいのですが、 そのUPDATEをかける値はBというテーブルから取ってきたいのです。 AとBを結合してBの値でAを複数レコードUPDATEすることは可能なのでしょうか?
228 名前:デフォルトの名無しさん [03/11/03 22:31] >>227 状況がよくわからないけどできます。 update文のset句の = の右辺には(select 〜 from 〜)みたい副問い合せとか テーブル名.列名みたいなのとかもできます。
229 名前:213 mailto:sage [03/11/03 22:33] >>222-226 ありがとうございます。まだ私の考えが足りてないようで・・・ もう少しやり方を考えてみます。
230 名前:のぶきち [03/11/03 22:42] >>228 お返事ありがとうございます。 ネットで調べまくったら見つかりましたが、こういうことですよね? この例はORACLEのようなのですが、DB2やDB2/400 などでも 同じことはできるのでしょうか?(ORACLE質問スレなのにすいません) update kprod p set p.price = (select new.price from knewprice new where new.prodno = p.prodno ) where exists (select 'x' from knewprice new where new.prodno = p.prodno );
231 名前:デフォルトの名無しさん [03/11/03 23:22] >>230 聞く前に、やってみれ。 疑問に思ったらとりあえずやってみれ。 うまく逝かなかったら調査だ。
232 名前:デフォルトの名無しさん [03/11/09 23:03] 初心者です。どなたか教えてください。。。 フラグが1である、ID、更新日、更新時間の抽出をしたいのですが、 IDと更新日が同じ場合は更新時間が古い方を取り出したいです。 その際、GROUP BY句を一切使用せずに抽出する方法って、あるのでしょうか? GROUP BYを使えば SELECT id,date,MIN(time) FROM data WHERE flg = 1 GROUP BY id,date と、簡単に出来るのですが・・・。 どなたか、よろしくお願いします。
233 名前:デフォルトの名無しさん mailto:sage [03/11/09 23:24] まずなぜ Group By を使いたくないか書け
234 名前:デフォルトの名無しさん mailto:sage [03/11/09 23:25] つうか、MIN を使う時点で GROUP BY が必須な気がするが・・・
235 名前:デフォルトの名無しさん mailto:sage [03/11/09 23:31] NOT EXISTS使え SELECT id, date, time FROM data A WHERE flg = 1 AND NOT EXISTS ( SELECT * FROM data WHERE id = A.id AND date = A.date AND time < A.time ) しかし、GROUP BY使いたくないってのはなんで? グループ化列以外の列の情報が欲しいから?
236 名前:デフォルトの名無しさん [03/11/09 23:50] 232です。ありがとうございました!! 使いたくない理由も、その通りで、これ以外のグループ化をしない他の列も 抽出したかったからです。先に理由を書かずに質問してしまってごめんなさい。 本当にありがとうございました。
237 名前:デフォルトの名無しさん [03/11/15 17:57] Oracleとの接続というのは VBなどで開発する場合 1.プログラム起動時に接続して終了するまでずっと接続しているのがいいのか 2.データベースアクセスのたびに接続するのがいいのか どっちがパフォーマンスに優れているのでしょうか?
238 名前:デフォルトの名無しさん mailto:sage [03/11/15 19:07] >>237 1に決まってるだろ。 2が(パフォーマンス)いいと思える理由書いてみ。
239 名前:デフォルトの名無しさん mailto:sage [03/11/15 23:35] >>237 接続は思ったよりもコストが高い。 専用線接続でなければ、気にするほどのことではない
240 名前:デフォルトの名無しさん [03/12/06 13:29] ORACLE 10gになって何が変わるの?
241 名前:デフォルトの名無しさん [03/12/06 20:23] ORACLE EBSって何なの?
242 名前:デフォルトの名無しさん mailto:sage [03/12/08 23:36] >>240 名前 >>241 良い仕事が出来るシステム e-Business System #本当は甘い
243 名前:デフォルトの名無しさん mailto:sage [03/12/09 02:15] oracleとcenturaが繋がらなくなってしまった… どうしよう…
244 名前:デフォルトの名無しさん [03/12/13 00:10] NOT NULL制約を付けるとデータをNULLじゃないかチェックするから 登録時に処理が遅くなると言ってるやつがいるのですが本当ですか? チェックするからその分遅いんだろうけど それって0.1秒とかそんな
245 名前:デフォルトの名無しさん mailto:sage [03/12/13 00:56] 確かに遅くなるが、どうって事はない。 1万レコードインサートしても1秒の差は出ないと思う。
246 名前:デフォルトの名無しさん mailto:sage [03/12/13 02:03] って言うか、チェックで増えるリスクより、NOT NULLキーの処理速度の向上の方が大きいのでは? 俺はトータルでは速くなると思うぞ。
247 名前:デフォルトの名無しさん [03/12/13 10:55] DBでNULLチェックしないんだったら、 アプリがチェックするんでしょ? その方が負担が大きいような気がするな。
248 名前:246 [03/12/13 11:39] あぁすまん、勘違いしてた。 アプリでチェックしなきゃならん場合ね。 なら確かに(わずかに)遅くなるけど、それは仕方無いのでは?
249 名前:デフォルトの名無しさん [03/12/13 11:47] >>247 NOT NULL制約付けたら 結局 DBでチェックするにしても 例外発生でアプリで処理することになるから 結局入れる前にアプリの方でチェックするんじゃないの? それとも例外発生させて処理するの?
250 名前:デフォルトの名無しさん [03/12/20 20:03] 大量データ更新中に、停電でDBサーバーが落ちてしまいました。 何とか、復旧してSQLPlusで接続しようとすると、 ORA-01033: ORACLE initialization or shutdown in progress と怒られて繋がりません。 どうすれば復旧するのですか?助けてください。
251 名前:デフォルトの名無しさん mailto:sage [03/12/21 00:06] ORA-01033: ORACLEは初期化またはシャットダウン進行中です
252 名前:250 [03/12/21 12:49] >>251 ということは、しばらく待てということで良いのすか?
253 名前:デフォルトの名無しさん mailto:sage [03/12/21 14:50] >>252 待てば回復する場合もあるということ。 それがcommit後か、rollback後かは処理の内容にもよるけど、 普通に考えればrollback後の様な気がする... ま、祈れ(w
254 名前:デフォルトの名無しさん mailto:sage [03/12/21 17:27] 最後のコミットポイントまでは保障されるだろうけど アプリのつくりが途中の中断に対応してなければ 結局バックアップまで戻して一からやり直しだな
255 名前:250 [03/12/22 10:08] 2晩放置してみたわけですが、 エラーは変わりません。 v$instanceを覗いてみるとmountedで止まっています。 alter database hogehoge open; すると、 エラー行: 1: エラーが発生しました。 ORA-01122: データベース・ファイル: 8の照合検査でエラーが発生しました。 ORA-01110: データ・ファイル: 8 : /app/auau/hogehoge/users/users002.dbf ORA-01251: ファイル番号: 8に対して読み込まれたファイル・ヘッダーのバージョンが不明です。 となります。言い忘れてましたが、Oracleは8.1.5です。 データが死ぬのは構わないですが、 データベース自身が復旧するのか知りたいです。 あと、復旧しない場合はデータベースの削除再構築で直るのかも知りたいです。 宜しくお願い致します。
256 名前:デフォルトの名無しさん mailto:sage [03/12/22 12:37] >>255 データが死んでも良いなら、DBの削除→再構築(つか再作成)でよいのでは? Oracleサービスとリスナーを再構築(作成)ね。 それよりも、ディスクの方が物理的に逝っていないかの方が 心配だったりするのだが...
257 名前:デフォルトの名無しさん mailto:sage [03/12/23 10:19] だいぶちがうようだ。 oreore=> select months_between(sysdate, '2001-01-01') from dual; ERROR: Relation "dual" does not exist oreore=> select months_between(sysdate, '2001-01-01'); ERROR: Attribute "sysdate" not found oreore=> select months_between(current_date, '2001-01-01'); ERROR: Function months_between(date, "unknown") does not exist Unable to identify a function that satisfies the given argument types You may need to add explicit typecasts oreore=> select months_between(current_date, to_date('2001-01-01','YYYY-MM-DD')); ERROR: Function months_between(date, date) does not exist Unable to identify a function that satisfies the given argument types You may need to add explicit typecasts oreore=> select age(current_date, '2001-01-01'); age ------------------------- 2 years 11 mons 22 days (1 row) oreore=>
258 名前:デフォルトの名無しさん [03/12/23 22:08] ERWINって使ってる人いる? 使い方が詳しく載っているサイトってあるかしらん? 教えてくだされ。
259 名前:デフォルトの名無しさん mailto:sage [03/12/26 09:31] 質問です。 ODBC経由でOracleとASPを接続したいのですが、 どうすればいいのかわかりません。ご教授お願いします。
260 名前:デフォルトの名無しさん [03/12/27 12:54] ロールフォワードってどういう意味ですか?
261 名前:デフォルトの名無しさん mailto:sage [03/12/27 15:57] リカバリのときなんかで、ログに記録した順番で もう一度更新をやり直して最新の状態に戻すこと
262 名前:デフォルトの名無しさん [03/12/27 21:01] オラクルはロックの情報をどこで管理しているの? SQLServerはテーブルで管理しているみたいで 行レベルロックをやりまくると、管理しているテーブルの 許容量を超えてしまい、行レベルロックからテーブルロックに なっちゃうと聞いたのですが、これってマジっすか??
263 名前:デフォルトの名無しさん mailto:sage [03/12/27 22:40] >>262 ロックエスカレーションの事言ってる?
264 名前:デフォルトの名無しさん [03/12/28 08:42] >>263 はい。 オラクルはどこでロックの管理してるの?
265 名前:デフォルトの名無しさん [03/12/28 08:48] >>262 pc2.2ch.net/test/read.cgi/db/1057061513/334 同じ人ですか?
266 名前:デフォルトの名無しさん mailto:sage [03/12/28 22:19] SQL Server最高
267 名前:デフォルトの名無しさん [03/12/29 11:47] オラクルはなぜロックエスカレーションが起こらないの?
268 名前:デフォルトの名無しさん mailto:sage [03/12/29 23:15] >>267 起こらないの?
269 名前:デフォルトの名無しさん [03/12/30 00:14] >>268 起こらないな。 だが何故に起こらないかは知らんw
270 名前:デフォルトの名無しさん mailto:sage [03/12/30 02:33] >>269 行ロックフラグは行ヘッダにあるから。だからメモリ容量とは関係ない。 ビフォアイメージはロールバックセグメント。
271 名前:デフォルトの名無しさん mailto:sage [03/12/30 06:52] >>243 今すぐにセンチュラの使用をやめてください。 むかし、センチュラ製腐れパッケージソフトで すっげーーーーー痛い目にあいました。
272 名前:デフォルトの名無しさん [03/12/30 10:27] >>270 行ヘッダというのは何と言うディクショナリにあるのですか? SQL*Plusで見たいので教えてちょ。
273 名前:デフォルトの名無しさん [03/12/31 18:05] 272について誰か教えて・・・
274 名前:デフォルトの名無しさん [03/12/31 22:57] DB板っていつできたんですか? ネタ?
275 名前:デフォルトの名無しさん [03/12/31 23:18] >>87 そんなことせんでもファイルを二つほどリネームしたら 普通にインストールできるぞ。