私のディスクに保存されている300個の.sqlファイルの中で、すべてのvarcharをnvarchar、textをntext、charをncharに更新する必要があります。これらのファイルには、ストアドプロシージャ、トリガ、関数、ビューなどが含まれます。これを達成するための最良の方法は何ですか。sqlファイルの置換に最適な手順
答えて
実際に安全な方法が必要な場合は、構造を実際に理解し、一致するこれらの発生を置き換えるパーサーを使用する必要があります。
私はそれに価値があるかどうかは分かりませんが、自分でコードを作成することはできますか?オープンソースのT-SQLパーサーがファイルを処理できるかどうか試してみることができます。 1つはオープンソースbsn ModuleStore versioning toolsetの一部です。
.sql
ファイルは何とかテキストファイルです。私はファイルを繰り返し、解析中にこれらの文字列を置き換えます。
文字列定数に "text"という単語が含まれている場合はどうなりますか?私の意見ではかなり一般的です。内部のコメントも置き換えたくないでしょう。単純な検索と置き換えよりも構文認識が必要なものが必要です。 – neo2862
また、テキストと呼ばれる列名があります。その場合もそれらを置き換えるべきではありません。 – Chinjoo
「テキスト」の正しいインスタンスを置き換える方法を確認してください。 'CREATE TABLE'に遭遇したとしましょう。例えば、そこで会った 'text'がデータ型になると言うことができます。さもなければ、300ファイルだけ、それは価値がないかもしれません、あなたは手作業の 'Find ... Replace'を実行している間に手動で行うほうがよいでしょう。 –
- 1. Oracle 11gの最適化手順
- 2. ASP.NET適切なデプロイメント手順
- 3. 最適なタスクの順序
- 4. Linq To SQLの簡単な手順
- 5. 5つのフレームに最適な置換アルゴリズムを評価
- 6. ページ置換アルゴリズム:FIFO、LRU最適化
- 7. 変換は、店舗手順
- 8. RegEx:検索と置換に最適な方法$!esc.html($!{XYZ})
- 9. 目的Cのデバッグが適切な手順を踏まずに
- 10. 不適切なgsub置換
- 11. 手順内のMySQLセミコロンの配置
- 12. SQL最適化最適化?
- 13. SQL行数の最適化になっ
- 14. タフなSQL最適化
- 15. Oracle SQL。手順内のデータ範囲
- 16. SQL複数の挿入手順
- 17. SQL Serverの機能と手順
- 18. SQL Insert Update手順の問題
- 19. oracle sqlの動的ピボット - 手順
- 20. RNNに最適なデバイス配置戦略?
- 21. SVG-animation on hover - 最初の手順は?
- 22. SQL複数テーブルの結合 - 最適な最適化
- 23. SQL最適化
- 24. SQL Server - アーカイブに最適なレプリケーションモデル
- 25. 大文字の文字をPythonに置き換える最適な方法は?
- 26. ASP.NETでn-tier Webサイトを作成する適切な手順
- 27. #defineの#ifに最適な代替手段
- 28. ビデオゲームの衝突検出に最適な手法は?
- 29. iPad 1とiPad 2のGPU判定に最適な手法は?
- 30. .NET SQL Server接続のシンプルなクラス(手順付き)
回答のコメント(リテラル内に単語が出現する可能性がある)の問題が既にあるため、変更を必要とするタイプを識別するためにファイルを解析する必要があると思われます。 – Orbling
優れたScintillaソースコードエディタコントロール用の.NETラッパーがあります。言語をSQLに設定した後、キーワード、文字列リテラルなど、選択したテキストの構文上の役割を正確に照会するための方法があります。たくさんのファイルがある場合は、調べる価値があります。 – neo2862
ええ..構文解析は行く方法です...あなたは構文解析のアプローチを続ける方法について何らかの方法を提案できますか? – Chinjoo