Windows Server 2008 R2 標準 (sp1) の 64 ビット バージョンで SQL Server Standard 2008 R2 を実行しています。
ログ ファイルをフラット ファイル ソースとしてインポートしました。col2
というテーブルで呼び出されたインポートからの列の 1 つは、次のbig
ような値を保持します: 16/Mar/2007:11:30:17
as varchar(50)
。
col2
その列 ( ) をdatetime
データ型 に変換したいと考えています。
私が試みていた方法の 1 つは、日付文字列の各部分を抽出し、それらを再結合して変換することでした。
私が遭遇した問題は、ログ ファイルをきちんと区切ることができずCHARINDEX
、1 桁または場合によっては NULL を返すようなものを使用して、各列の幅が異なることです。
CLR 統合を使用して正規表現を使用してセットアップしようとしましたが、機能しません (Visual Studio で C# プロジェクトを作成できません。そのためのオプションはありません)。また、SQL が原因でマスター データ サービスがインストールされません。 Server 2008 R2 Standard ではサポートされていません。
これを行うための最良の方法は何ですか? CASE
、SUBSTRING
およびCHARINDEX
? _