• ベストアンサー

view作成時にデータ型を変更したい(SQLServer2000)

何度もお世話になっております。 SQLServer2000にて、現状で300近くあるテーブルデータにText型であるフィールドが複数存在ます。 今回行ないたいことは、これらテーブルのVIEWを作成 → 各テーブル内で"Text型"に定義されているフィールドを"VarChar(max)型"に変更してVIEWを作成したいのです。 この作業をあまり労力をかけずにできれば一括で処理できる方法等ありませんでしょうか?どうかよろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • kero_mio
  • ベストアンサー率90% (94/104)
回答No.2

一応、私の方でご質問の内容のサンプルを作ってみました。 ただ、ちょっとコードが長かったので、 私のBlogの方にサンプルコードを掲載しましたので、 ご参考頂ければと思います。 http://blogs.wankuma.com/mymio/archive/2008/01/25/119318.aspx もし追加の質問がある場合は、私のBlogではなく、 このスレに追加で質問して頂けると助かります。 (OKWave系列の利用規則に反してしまうため) 以上、ご参考になれば幸いです。

参考URL:
http://blogs.wankuma.com/mymio/archive/2008/01/25/119318.aspx
azuaz_001
質問者

お礼

連絡が遅れてすみません。 kero_mioさんのブログを拝見させていただきました。 サンプルコードまで載せていただき大変感謝しております。 教えていただいた方法で意図する作業がおこなうことができました! 教えていただいてばかりでコードの意味を理解しているとはいえませんが…(TSQLはもとよりDB管理自体不慣れなもので覚えなければいけないことがたくさんありますが合間を見つけて勉強していきたいと思います。)どうもありがとうございました。

その他の回答 (1)

  • kero_mio
  • ベストアンサー率90% (94/104)
回答No.1

細かい点で、少し確認させて下さい。 >現状で300近くあるテーブルデータ これは、Text型フィールドが300個ですか? それともテーブルが300個ですか? >これらテーブルのVIEWを作成 → 各テーブル内で"Text型"に定義されているフィールドを"VarChar(max)型"に変更してVIEWを作成 Text型だと、データによっては、改行コードが含まれていることが ありますが、VARCHARやNVARCHARにした場合、改行コードは 残っていた方がいいのでしょうか? それとも消した上で、VARCHARやNVARCHARにしたいのでしょうか? 状況と情報をまとめて、補足頂けると非常に助かります。 よろしくお願いします。

azuaz_001
質問者

補足

ご連絡ありがとうございます。 >これは、Text型フィールドが300個ですか? >それともテーブルが300個ですか? テーブルが300近くありその中にText型フィールドが不特定に入っております。 >VARCHARやNVARCHARにした場合、改行コード… 改行コードは消した上でVarcharにできるとありがたいです。 ※1テーブルごとにデータ型を確認して変換する方法では途方もない労力がかかってしまい何かよい方法がないかと思いご相談させていただきました。どうかよろしくおねがいします。

関連するQ&A