Oracle>>>>>>SQLServer

このエントリーをはてなブックマークに追加
192NAME IS NULL:2007/03/17(土) 19:14:58 ID:???
ダーティリードさせないために読み取りもさせないなんてな。。。
193流れのパフォーマンスチューニング屋:2007/05/14(月) 23:15:50 ID:R4Xq/jem
知らないだけかもしれないが
個人的にOracleと比べて、MS SQL Serverが不便なところ
・ロックエスカレーション
 >>回避の為に、ロック出来る回数を増やすのは
  根本的な問題解決になる気がしない。
・昇順INDEXが一つしか作れない事
 >>一つのテーブルの複数のソートをスキップするために
  利用できるINDEXは一つしかない。
・読み取り一貫性を保証するためにはロックせざるを得ない事
 >>大規模DBでこの仕様はちょっと。。。
・内部のトレース情報をわかりやすく表示できない事
 >>DBが判断するためのコストを人間が見ても意味ないっしょ。
  それで早くなるんならDB側で判断できてると思う。
・全件のスループットをあげるためのコスト判断が出来ない。
 >>OracleにあるFirst rows、All rowsの区別がない。
・スカラー副問い合わせがサポートされていない事
 >>これは私の趣味で。。。
・実行計画をさわれない。
 >>パフォーマンスが悪くても機械に任せきりにしかなれない。
てな感じかな?

間違ってたらスマソ。
194NAME IS NULL:2007/05/14(月) 23:29:00 ID:???
非常に素人臭い解説乙
195NAME IS NULL:2007/05/17(木) 06:49:51 ID:???
>>193
育った畑の違いとしか言えんが、藻前はOracleに染まりすぎてるだけだと思うが。
と言うかおかしい。
196流れのパフォーマンスチューニング屋:2007/05/17(木) 23:38:46 ID:BymUMPNg
出先にて失礼。

>>194、195
先日SQLServerで作業してて、
どうしても過去作業してたOracleと比較してしまってな。
比較にならずに板汚しスマヌ。
197NAME IS NULL:2007/06/07(木) 00:07:14 ID:???
>>162
これって結構致命的だと思う。
SQLServer2005で解決だっけ?
198NAME IS NULL:2007/08/21(火) 16:56:46 ID:???
>>162
READPAST 指定でいける。
199NAME IS NULL:2007/09/15(土) 20:29:52 ID:???
もう来年出るのか、SQLServer新バージョン
2005はWindows2008に対応させないつもりなんかな。
200NAME IS NULL:2007/09/16(日) 16:46:20 ID:???
流石に前回同様パッチ対応ぐらいはするでしょ・・・・・するよね?(−−;
201NAME IS NULL:2007/10/31(水) 22:38:01 ID:077AHbag
ORACLEはSI Object Brouser があるかないかで、使いやすさが違うからなんともいえない。
Object Brouser があればOracle
202NAME IS NULL:2007/11/01(木) 10:26:16 ID:???
社員乙www
203NAME IS NULL:2007/11/04(日) 19:39:04 ID:???
SQLServerのT-SQL しょぼすぎる
PL/SQLと比べ物にならん
204NAME IS NULL:2007/11/05(月) 20:39:30 ID:5q2+rIJc
ORACLEの開発ならSI オブジェクトブラウザー


↓社員乙
205OpUzvQxTl:2007/11/14(水) 07:16:24 ID:???
206NAME IS NULL:2007/11/18(日) 16:46:05 ID:U6M3l2gU
SI ObjectBrowserって、最新版からSQLの入力補完機能がついたけど、ANSI結合型のSQL文だと
うまく補完しないんだよな〜〜
あと、ALL_TABLESとかはSYS.ALL_TABLESみたいに書かないと補完してくれない。
もうちょっと自動補完機能を改善してほしいでつ。
あとsql文のフォーマット機能も業務プロジェクトごとにルールが違うんで、フォーマット後の
書式を設定できるとうれしい。
207NAME IS NULL:2007/11/18(日) 17:24:24 ID:ClgLgRg7
作れよw
208NAME IS NULL:2007/11/19(月) 23:06:13 ID:FuZN+Gjh
うちにもオブジェクトブラウザぐらい作れるっていいはってるやつがいるが
そいつのPGはいつもバグばっかなんだよな。
209NAME IS NULL:2007/11/19(月) 23:12:58 ID:???
オブジェクトブラウザの価格考えたら自社ツール作る必要ないよ
せいぜい新人教育のネタにするぐらい(そして使い物にならない)
210NAME IS NULL:2008/03/15(土) 18:15:38 ID:8wdu5XoV
最近、SQLServerの宣伝賑やかで
銀行の勘定系にも使われているようなのもあったけど
このスレ見て
オラクル検討することにすた。
211NAME IS NULL:2008/03/19(水) 03:02:34 ID:???
よくわからないのでオラクルに詳しい人説明お願いします。
ttp://live27.2ch.net/test/read.cgi/ogame/1205857996/
212NAME IS NULL:2008/04/13(日) 03:18:20 ID:???
GUIはSQLServerの方が充実してるね
213NAME IS NULL:2010/04/01(木) 21:33:06 ID:xcUcZ8YL
なかなか興味深い記事です。

オラクル都市伝説に物申す。
http://d.hatena.ne.jp/matu_tak/20100324/1269539205

どちらの言ってることが正しいんですかね?
214NAME IS NULL:2010/04/03(土) 21:53:25 ID:yQOBz7ny
純正SQL Developerでいいやろ。
215NAME IS NULL:2010/04/03(土) 22:06:40 ID:???
顔真っ赤にして書いたってかんじのblogだな。
216NAME IS NULL:2010/05/01(土) 17:10:12 ID:???
Oracleばっかやってるヤツは他DBに来るとめちゃくちゃデタラメなSQL書くからのぅ
217NAME IS NULL:2010/05/19(水) 01:31:13 ID:???

SQLserverの行ロックってなんや?

検証したんか? したなら、テスト環境書かんかい。
SQLserverオタは必ずテスト結果も出さずに出来る出来るいいよる。
オラクルの行ロックは検証結果があっちこっちで書かれてるやろ。
218NAME IS NULL:2010/06/03(木) 14:25:49 ID:???
検証しました。
該当ページに含まれるすべての行に行ロックが発生しました。
結論:SQLserverで行ロックはできません。
219NAME IS NULL:2010/06/17(木) 12:25:36 ID:???

会社でOracle使ってるものですけど、ある時SQL Server教えてもらえる機会があって、教えてもらいながら
ヨタヨタ使ってたんですけど、使ってたら

select table-a ......
updete table-b set ....
update table-c set ....
go
select table-b .....

とかやってたときに、table-bの更新間違えてたことに気づいて、まあいいや、と
rollback
したんですよ。そしたら、そのrollback効かなかったんですよ。友人に聞いたらgoしたらrollbackは
効かないんだとかなんとか、
本当なんですかね? commitしてないのにrollback効かないの??
220NAME IS NULL:2010/06/17(木) 16:23:28 ID:???
即時コミットモードがデフォルトでトランザクションを使いたければ
begin transaction命令を使う必要がある。
221NAME IS NULL:2010/06/18(金) 11:17:18 ID:???
>>220

なんと、SQL Serverは即時コミットモードとTransactionモードなんてのがあるのか、いや驚いた。
しかし、2つのモードをユーザーが意識しながら使い分けなきゃいけないなんて
使い難いだろ。
222NAME IS NULL:2010/06/18(金) 22:09:05 ID:???
どっちか一方のモードしか使えなかったら、それはそれで文句言うだろ。
223NAME IS NULL:2010/06/18(金) 23:47:53 ID:???
>>222

いや、即時コミットモードなどいらん。
まともなロックと読み取り一貫性があれば。
224NAME IS NULL:2010/07/01(木) 16:03:47 ID:???
OracleのSQLインタープリタ(SQLPLUS)にはちょっとしたわながあって、
commitもrollbackもしないままEXITで終了させると、
commitされてしまう。

共有ロック方式の場合長時間ロックは厳禁だから即時コミットデフォなのは妥当な措置だな。
マルチバージョニングでも書き込み同士はロックがかかるから長時間ロックは避けたほうが
いいと思うが、リード操作でロックフリーなのをアピールしたかったのだろう。
225NAME IS NULL:2010/08/24(火) 02:39:10 ID:4e1wvTf+
SQLServer2000はスナップショット分離レベルが無いから辛い…
更新済未コミットレコードは読む事さえ出来ない…
226NAME IS NULL:2010/08/24(火) 03:16:46 ID:4e1wvTf+
>>213
217さんに聞きたいです(純粋に聞きたいだけです)。
SQLServerのロックエスカレーションの発生理由は、
大量の行ロックによるメモリ圧迫に対しての対策だとMS社サイトに書いてありました。
※メモリ節約がより有効と判定された場合は、大量の行ロックを1個のテーブルロックにする
Oracleは、どんなに行ロック件数が多くなってもそのまま?

227NAME IS NULL:2010/08/24(火) 03:28:24 ID:4e1wvTf+
すいません。47 とかに書いてありました…
228NAME IS NULL:2010/09/14(火) 08:39:55 ID:???
>>224
exitコマンド打った時にトランザクションが残ってるってメッセージも出ないプログラム設計がダメだな
229NAME IS NULL:2010/09/26(日) 21:31:40 ID:???
SQLSERVERの3大糞仕様

@ロックエスカレーション 
5000行以上のレコードを一度に更新、或いはロックした場合に発生し、
行ロックがテーブルロックへ昇格する。

Aテーブルスキャンによる ロック待ち
対象テーブルの中でたた一件だけでもロックしているレコードがあると、
まったく関係ない行へのロックが獲得できない場合がある。
発生条件としては、キー、或いはインデックス情報だけでダイレクトに
対象データに到達できないSQLを発行した場合。

B実行プランキャッシュの使用判断基準
一度発行されたSQLの実行プランがキャッシュにある場合、
検索条件の値が異なる同様のSQLが発行されると、
明らかに非効率な検索になるにもかかわらず、強引にキャッシュされた
プランを利用してしまい、いつまでも実行結果が返ってこないことがある。
230NAME IS NULL:2010/09/27(月) 16:50:13 ID:???
SQL Server でロック エスカレーションを禁止するには、
以前のバージョン(SQL Server 2005 以前)では、トレース フラグ 1211 をセットします。
これでロック エスカレーションを禁止することができます。
231NAME IS NULL:2010/09/27(月) 16:52:18 ID:???
SQL Server 2008 の場合は、LOCK ESCALATION オプションがサポートされたので、
テーブル単位でロック エスカレーションの禁止を行うことができます。
232NAME IS NULL:2010/09/27(月) 17:02:33 ID:???
http://msdn.microsoft.com/ja-jp/library/ms188469.aspx

[テーブルのプロパティ] ([全般] ページ)

[ロック エスカレーション]
DISABLE
ほとんどの場合でロック エスカレーションを禁止します。
テーブルレベルのロックは完全には禁止されません。
たとえば、SERIALIZABLE 分離レベルでクラスタ化インデックスがないテーブルをスキャンしている場合は、
データベース エンジンでテーブル ロックを実行して、データの整合性を保護します。
233NAME IS NULL:2010/10/01(金) 12:09:54 ID:???
>>229
Bに関しては、Oracleだって同じ現象が発生するじゃん
234NAME IS NULL:2010/10/01(金) 23:37:48 ID:???
プレースホルダ使った静的SQLならごく当たり前の動作だな。
値を埋め込んだ動的SQLで値の違うキャッシュを使用するなら逆にすごい。
235NAME IS NULL:2010/10/10(日) 22:42:26 ID:???
NASDAQ
SQL Server 2005 の展開によって、リアルタイムの取引照合とクエリを実現
http://www.microsoft.com/japan/showcase/nasdaq3.mspx

株式会社百五銀行
世界初。Windows Server 2003, Datacenter Edition とSQL Server 2005 Enterprise Edition をプラットフォームに、銀行の勘定系システムを再構築。
http://www.microsoft.com/japan/showcase/hyakugo.mspx

236NAME IS NULL:2010/10/22(金) 00:09:22 ID:???
SQLServer2005はSP2ぐらいまでクエリエンジンがバグだらけだったのに
金融系で使うとか正気の沙汰じゃないよ。
社内システムか、分析系システムならいいが‥
237 忍法帖【Lv=40,xxxPT】(2+0:8) 【30.1m】 電脳プリオン ◆3YKmpu7JR7Ic :2012/09/16(日) 17:51:12.14 ID:??? BE:648653388-PLT(12079)
違いがわからん
238NAME IS NULL:2013/03/12(火) 12:43:29.74 ID:wXBj3VQe
      _
      |O\
      |   \ キリキリ
    ∧|∧   \ キリキリ
ググゥ>(;⌒ヽ    \
    ∪  |     (~)
     ∪∪   γ´⌒`ヽ
     ) )    {i:i:i:i:i:i:i:i:}
     ( (    ( ´・ω・)、
           (O ⌒ )O
            ⊂_)∪
239NAME IS NULL:2013/03/20(水) 07:39:48.15 ID:vIKc7Kkm
※本投稿の拡散歓迎です。
違法派遣(偽装請負・多重派遣・偽装出向・事前面接等)についての刑事罰
【告訴権者=業務委託、準委任、共同受注、業務請負契約および特定派遣(契約・正規)、一般派遣、正規社員】

@職業安定法第44条の労働者供給事業の禁止規定に違反(1年以下の懲役または20万円以下の罰金)
 ■偽装請負・多重派遣・偽装出向・多重出向
 ■事前面接(顔合わせ・面談・職場見学等)と履歴書・職務経歴書・スキルシート等提出による労働者の特定(※)
(音声録音で立証可能)
A労働基準法第6条(中間搾取の禁止) (1年以下の懲役又は50万円以下の罰金)
 ■多重派遣・多重出向

※違法派遣(派遣労働者の特定)→派遣法で認められた派遣労働者ではない→労働者供給事業→職業安定法44条違反というの
が前提となる法解釈となります。派遣法における罰則が軽微なのは法律の不備や労働者軽視などが原因ではありません。
違法派遣は全て職業安定法44条で裁くことが可能なため、刑罰の重複を避けるために派遣法には軽微な罰則(主に裁量行政による)しかないのです。

使用者に有利な民事訴訟や労働関係諸局への通報等の対極にあるのが書面(告訴状)による刑事告訴(※告訴先は検察の直告班)です。
労働関係諸局への通報・斡旋による軽微な「適正化」や監督・指導に対して、法律に定められた刑事罰を問うことになり、
違法派遣業者にとって有罪は考えられる限り最大の処罰となります。同時に刑事罰を受けた
担当者が取引先に与える悪印象を考慮すれば、通常会社側は告訴が受理された時点で告訴取り下げに
動くのが妥当でしょう。懲役、前科がつく刑罰が下される可能性から、告訴取り下げの和解金は高額となることが多いのです。

告訴の流れとしては、

刑事告訴⇒告訴受理⇒告訴取下げ要請⇒取下げ和解金入金⇒告訴取下げ

となります。告訴の懲役刑適応は犯罪者個人に対してのみですので、告訴する対象は

派遣先・派遣元 社長
派遣先・派遣元 担当者・責任者・管理役員・取締役
派遣先・派遣元 人事管理担当者・人事管理役員・取締役

が妥当です。刑事告訴取り下げの和解金額は犯罪者個人と交渉するとよいでしょう。(告訴状は人数分提出する必要あり)
240NAME IS NULL:2013/03/24(日) 12:01:20.90 ID:EFgh/klN
※本投稿の拡散歓迎です。
派遣労働者のパワハラ・セクハラ対応策について

下請け労働者、業務委託、派遣労働者は契約期間が短期という制約があり、契約更新拒否をちらつかせた不当な労働強要の実態があります。
雇用形態における壁・差別は法律に直接的規程はなくとも認められているわけではありません。
「正社員の有期雇用労働者に対する優先的地位乱用」による「侮辱罪」、「脅迫罪」、「強要罪」、「傷害罪」、条例違反で刑事告訴できるが、
本稿では刑法ではなく労基法関連の対策に焦点をあてます。

労働基準法第5条(強制労働の禁止)(1年以上10年以下の懲役又は20万円以上300万円以下の罰金)
■精神の自由を不当に拘束する手段によつて、労働者の意思に反して労働を強制してはならない。
例:正規労働者(同僚)による残業の強制。仕事の期限が遅滞した際に「繰り返し」残業を示唆する。
例:派遣の仕事の回し方の裁量を正社員が決めるなどと示唆する。
例:飲み会、昼食、たばこの同伴を強要する。

労働基準法3条 (六箇月以下の懲役又は三十万円以下の罰金)
■社会的身分を理由として労働条件について差別的取扱をしてはならない。
例:社内制度に明示されていない指揮命令系統が正社員と派遣社員に存在する。
派遣社員も正社員と同様に社内制度に準じるという契約上、業務で平等に取り扱う必要がある。
例:社内制度上の上司でもない正社員が命令をしたり、仕事上の指導権・裁量・許可権限をもつこと
派遣契約の内容にそうした区別を制度化するような客観的な証拠がなければ派遣社員側に有利といえる。
例:派遣社員に業務上における裁量を一切与えず、非管理職の正社員が許可を与える

労基法3、5条については、経営責任も問えますので、刑事告訴できる相手は以下のとおり。

派遣先 当該正社員
派遣先 指揮命令者
派遣元・派遣先 代表取締役

刑事告訴(告発)の行い方ですが、内容証明郵便で告訴状(告発状)を地方検察の直告班に郵送してください。
241NAME IS NULL
>>229
SET ALLOW_SNAPSHOT_ISOLATION ON
SET READ_COMMITTED_SNAPSHOT ON
にすればオラクルライクになるよ
企業向けの場合はデフォルトでこうなってた方が自然だと思うけどね
デフォルトのロックは確かに企業向けとしては使えない
しかも上記のように無意味に2つ設定が必要だから
不勉強なオラクル信者はまず辿り着かないだろうなw

しかし、2005?あたりからスナップショット付いたかわりに基本が遅くなった
2000と比べると外部結合やグループ化が遅くなった
特に外部結合した副問合せ内のグループ化が極端に遅くなった
ので、内部結合で書いた中間処理クエリを複数実行するっていう、
オラクル信者風のダサい書き方する必要が出てきた