顧客のサイトを MySQL 4 ではなく MySQL 5 を使用する新しいサーバーにアップグレードするとき、データベースを移行するときに通常の一連の問題に遭遇しました。そのうちのいくつかは、mysql が SQL ダンプについて不平を言うだけです (修正するのが最も簡単でした)。また、ASP コードにいくつかの変更を加える必要があったものもあります。s の代わりにコンマを使用することはJOIN
、MySQL 5 では常に有効であるとは限りません。
ただし、1 つの問題はより厄介です。MySQL 5 では、比較を扱うほとんどの ASP ステートメントはType Mismatch
、次のような で失敗するようになりました。
IF RS("myfield") > 5 THEN
これは特に、SQL クエリに s が含まれる場合に発生しますSUM
。MySQL 4 で問題なく動作します。
修正は難しくありません。クエリについてはCAST
修正SIGNED
し、比較ステートメント自体については、 を使用するとCint
うまくいきます。
Type Mismatch
問題は、サイトが巨大で、何百もの個別の ASP ファイルで構成されている (コードが非常に悪い!) ことです。エラーが表示されるまで、これらすべてのエラーを突き止めることはほとんど不可能です。
だから私の質問は:
この問題を解決するためのよりグローバルな方法はありますか? ODDCドライバやMySQL自体の設定などを考えています。