2005年07月29日

アップグレード時の変更点・考慮点

○ アップブレード後の構成の変更点
インストールフォルダ
  ¥mssql (SQL Server 7.0) → ¥Program Files¥Microsoft SQL Server (SQL Server 2000)
サービス
  SQL Executive サービス (SQL Server 7.0) → SQL Server エージェントサービス (SQL Server 2000)
  MSDTC サービスが自動起動(← SQL Server 7.0 では手動起動)
SQLExectiveCmdExec ユーザー
  SQLAgentCmdExec ユーザー (SQL Server 7.0) → SQLExectiveCmdExec ユーザー (SQL Server 2000)
    ※ SQL Server 2000 ではデフォルトで作成されない
サンプルデータベース
  Northwind データベースの追加

○ アプリケーション開発時の考慮点
多くのクライアントアプリケーションはアップグレード後もそのまま動作
  単純な SELECT/INSERT/UPDATE/DELETE のみを使用するアプリケーション等
修整する必要のあるアプリケーション
  環境設定オプション(sp_configure)によるサーバーの設定をプログラムの中で実行
  セグメント/デバイスをプログラムの中で作成
  バックアップ/復元をプログラム
  システムストアドプロシージャを使ってデータベース情報を取得
  システムデータテーブルに直接アクセスして情報を取得
  SQL-DMO、タスク等 SQL Server の管理機構をプログラミング

○ Transact-SQL の変更点
照合順序
  SQL Server 6.5 では大文字/小文字を区別
    SQL Server 7.0 以降のデフォルトでは区別しない … アクセントのみ(照合順序の違い)
検索結果の自動的な並べ替えはない
  SQL Server 6.5 では ORDER BY 句または GROUP BY 句のないステートメントでは何らかの列で自動並び替え
    SQL Server 7.0 以降での並べ替えには DRDER BY 句が必須
空文字列の扱い
  SQL Server 6.5 では空文字列も1個の空白と解釈
      例)DATALENGTH(' ')
          → SQL Server 6.5 … 1
          → SQL Server 7.0/2000 … 0
NULL と空文字列
 
 
SQL Server 6.5 では SPACE や RIGHT など引数によっては NULL を返す関数が、SQL Server 7.0/2000 では空文字列を返す
      例)RIGHT('abc',0)
          → SQL Server 6.5 … NULL
          → SQL Server 7.0/2000 … 空文字列
予約キーワードの追加
  RESTORE、BACKUP、DENY 等
INNER JOIN、OUTER JOINの 推奨 → ANSI 表記準拠
  グラフィカルツールが自動生成するものは JOIN
  従来型の結合演算も可能
変数への値の代入
  SELECT のほかにも SET も可

○ スクリプトの互換性

  スクリプト生成、Transact-SQL の互換性と同様


○ 各種ツール/機能と対応
ISQL → OSQL
  ※ ISQL は内部的に DB-Library 使用、OSQL は ODBC 使用
ISQL/w → クエリアナライザ
SQL Trace → プロファイラ
タスク … ジョブ、複数ステップ/ワークフロー制御
転送マネージャ … DTS オブジェクト転送
保守計画ウィザード … ログ配布機能追加
Web Assistant ウィザード ⇒ [ツール]メニューから
master データベースの再構築 ⇒ rebuildm.exe
Net-Library … サーバーネットワークユーティリティ

☆ Books Online に見る互換性レベル → 「旧バージョンとの互換性」
レベル1 使用できなくなったので別の手段を講じる必要あり
レベル2 機能が変わったので別の機能に切り替える必要あり
レベル3 下位互換性のためサポート、将来的にサポートされなくなる可能性あり
可能であれば新しい機能にしておく
レベル4 細かい点で変更されているが、変更は必須ではない
posted by w@ko at 20:00|  ・SQL Server ノート | このブログの読者になる | 更新情報をチェックする
×

この広告は1年以上新しい記事の投稿がないブログに表示されております。