【保存版】2013年度発売全パチスロアプリ一覧(iPhone,iPad)

【SQLServer】2005から2000へ移行する場合の注意点。

2005から2000へ移行するってことはあんまりないかと思いますが、
ないこともないような気がするので覚書。

SQLServer2005で書いてたスクリプト、
SQLServer2000ではそのまま使えない場合があります。
(ちなみに、スクリプトを実行する際、株式会社システムインテグレータの
SIObjectBrowser for SQLServerというツールを使ってます。)

実際にあった4つのケース。

<ケース1>
*以下はSIObjectBrowserでdropつきで出力したテーブル生成スクリプトの一部。
IF EXISTS (SELECT * FROM sysobjects WHERE
id = object_id(N'テーブルA')
and uid = schema_id(N'dbo')

)
DROP TABLE dbo.テーブルA


これ、SQLServer2000では通りません。
SQLServer2000のsysobjectsにschema_idはありません。


<ケース2>
SQLServer2000の場合、
SQLのTOP区は、TOP n と書きます。TOP (n)のようにカッコをつけると
エラーとなります。

SELECT TOP 1 FROM テーブルA ・・・これはOK
SELECT TOP (1) FROM テーブルA ・・・これはNG

SQLServer2005の場合は、
逆にTOP (n)のようにカッコをつけます。ただし、下位互換があるため、
カッコなしでもOKです。


<ケース3>
エラー処理では、TRY CATCHが使えません。。。
これは痛い。
処理毎にERRORの中身をチェックしないといけません。
↓参考になります。
TRY~CATCH
T-SQL エラー処理


<ケース4>
2005で作成したバックアップセットは、2000で復元できません。
(2000→2005は可能らしいです。やってませんが)

バックアップセットを読み込もうとすると、
「エラー3205:バックアップまたは復元操作で指定されたバックアップデバイスが多すぎます。64だけが
有効です。RESTORE HEADERONLYが異常終了しました。」のメッセージが表示され、
処理ができません。

環境を移す場合、復元ではなく、BCPでデータを抜いて
移行することになるかと思います。
(DB設定は別途必要。)

SIObjectBrowserしかインストールしていないクライアント端末から
BCPを使用する場合は、事前にbcp.exeを準備しておく必要があります。
SI Object Browser オンラインマニュアル

bcp.exeは、標準でSQLServerがインストールされている場合、
C:¥Program Files¥Microsoft SQL Server¥80¥Tools¥Binn¥bcp.exe に
(SQLServer2000は、80。SQLServer2005は、90。)
あります。
(追記:2010/10/07 単純に bcp.exeをコピーするだけでは動かないようです。)

こんなとこかな。

ストアドを使うのであれば、エラー処理が貧弱なSQLServer2000はちょっと厳しい印象です。


SQLServer2000関連の書籍ってあんまりないですが、
本気でやるならこれはおススメ。
>>SQL Server2000ストアドプロシージャプログラミング (Database Books)


レビューNo:1 評価:5★★★★★ 日付:2004-01-05
実務でストアドプロシージャを使用するのに知っておかなければならないことが良くまとまっていると思います。おそらくストアドプロシージャだけを取り上げてここまで解説している本は他にはないと思われます。本書は手っ取り早く目的を実現するための、いわゆるHOW-TOものではありません。熟達した上級者でない限り、その手の本は非常に危険だと私は思っています。技術の解説だけでなく、それを使用するに当たっての注意点(盲点となる思わぬ副作用等)までよく書かれています。この本はリファレンスとしても優れていますが、精読することによって基本的な作法を学ぶことができる優れた指南書でもあります。

[Google PR]

Twitterはじめました。プラプラ | Twitter

<< 【あまっちゃお】プレゼントに最適。iPod / iPhone 付属イヤフォン専用 アクセサリー PhoneCuffs。
【SQLServer】トランザクションが開始されているかを知る簡単な方法。@@TRANCOUNT >>

[関連エントリ 最新5]

[Google PR]


[最新エントリ 5]

>>トップページ
人気カテゴリ:AccessTips SQLServer CakePHP iPad
過去ログ(全記事一覧)

コメント
コメントする(お気軽にどうぞ)









この記事のトラックバックURL
トラックバック
カテゴリー
プロフィール
お問い合わせ
Powered by NINJA TOOLS
links
recent comment
  • 【Access】vbaでhmacが正しく計算できた!!
    まさ (06/01)
  • 【Access】AccessReportMailメール送信時のポートを25から587へ
    わら (05/31)
  • 【SQLServer】超シンプル!再帰CTE(共通テーブル式)で連続データを作成する。
    sazi (09/08)
  • 【あまっちゃお】Amazon商品検索「あまっちゃお」プロジェクト始動。Ver00-06-00 β
    カメちゃん (07/31)
  • 【Access】あれ?DoCmd.RunCommand acCmdSaveRecordの内部仕様が変わった?
    花姉 (03/17)
  • 【Access】実行中のmdb(自分自身)をバックアップコピーする方法。
    亀 (02/06)
  • 【雑記】Amazonでの注文時、TMGさん発送にご注意を。納期を守れない可能性あり!
    管理人 (01/31)
  • 【雑記】Amazonでの注文時、TMGさん発送にご注意を。納期を守れない可能性あり!
    あ (01/31)
  • 【雑記】Amazonでの注文時、TMGさん発送にご注意を。納期を守れない可能性あり!
    K (11/13)
  • 【VAIOP】VaioXと両持ちできるものすっっごくマニアックなケース。当たり前ですが在庫限り。(笑)
    管理人 (08/04)
recent trackback
  • 【Access】2003安全でない式がブロックされていませんとセキュリティーレベル。
    awgs Foundry (10/29)
  • 【VAIOtypeP】液晶保護シートは、新車のカバーではない。レイアウト社液晶/天板保護フィルムセットRT-VP1FS1
    XMLがキライ。 (04/09)
  • Vistaから、LinkStation(NAS)にアクセスできません。
    そのほかいろいろ (09/06)