
現在SQLserver上で、、CSVを一時テーブルに保管し、ある条件に合致する行のみTBLに追加するというストアドを書いています。そのTBLには「datetime型」の列があります。
この作業で、2点問題が発生しています。
(1)CSVファイルから一時テーブルにデータを入れようとすると、datetime列がNULLの場合、型の不一致でエラーが発生します。
(2)上記において、一時テーブルの型をとりあえずvarcharにしておくと入れれるのですが、TBLに追加しようとする際、「convert(datetime,変数)」としているのですが、上手くキャストしてくれません。(「文字列から日付への変換に失敗しました」のような文がでます)
どのようにすれば、NULLでもdatetimeに入れられるのでしょうか?教えてください。
No.1ベストアンサー
- 回答日時:
## Nullじゃなくて''(空文字)が登録されているような気がしますが。
。。## select case when 変数 is null then 'NULL' when 変数 = '' then '空' else 'OK' end
## from CSVファイル
## でNullと出ずに、空とでたらそうです。
## 調べてみないと分らないので、それはさておき、
とりあえず、
convert(datetime,変数)
のほうは、
case
when 変数 is null then null
when 変数 = '' then null
else convert(datetime,変数)
end
としたらうまくいくのではないかと思います。
datetime型の変数がNot Null指定でテーブルを作っているとダメですが。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
日付型のフィールドに空白を入れる方法を教えてください
その他(データベース)
-
Date型にNULLをセットしたい VB2008+SQLServer2008
SQL Server
-
【VB.NET】日付型の列にNULLを登録する方法について
SQL Server
-
-
4
SQLServerでNULLを挿入したいです
SQL Server
-
5
datetime型のインポートについて
SQL Server
-
6
VB.NET DateTimeの型について
Visual Basic(VBA)
-
7
【SQL】他テーブルに含まれる値に合致する行を抽出
その他(データベース)
-
8
SQLのエラー(~付近に不適切な構文があります)
SQL Server
-
9
BCPでCSV内の文字列をテーブルのDatetime型カラムに取り込む方法
その他(データベース)
-
10
MySQL Date型にNULLが設定できない。
MySQL
-
11
エクセルでCSVを編集するとき、空白(NULL?)はどう入れますか
Excel(エクセル)
-
12
FORMが開いているかどうかの確認方法
Visual Basic(VBA)
-
13
DataGridViewの特定列に入力されている重複チェックをしたい
Visual Basic(VBA)
-
14
DataGridView 列ごとの入力制限
Visual Basic(VBA)
-
15
DataTableから条件を満たした行を別のDatatableへコピーしたい
その他(プログラミング・Web制作)
-
16
コマンドプロンプトの「%1」と「%~1」の違いがわからない
その他(プログラミング・Web制作)
-
17
INSERT時に発番を行いたい
SQL Server
-
18
DataGridViewでyyyy/MM/dd
Visual Basic(VBA)
-
19
DataGridViewの桁数制限に関して
Visual Basic(VBA)
-
20
変数にnullを代入するには
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
datetime型でNULL値を入れたい。
-
Oracleのnull
-
SQLで特定の項目の重複のみを排...
-
外部参照してるキーを主キーに...
-
フィルターかけた後、重複を除...
-
差し込み後、元データを変更し...
-
SQLで列名を変数にできないでし...
-
エクセルで最後の文字だけ置き...
-
カーソル0件の時にエラーを発生...
-
SELECT 文 GROUP での1件目を...
-
JANコードとPOSコードは同じ?
-
select文の書き方「半角カナ+...
-
EXISTSを使ったDELETE文
-
Access パラメータクエリをcsv...
-
access2021 VBA メソッドまたは...
-
COBOLの文法
-
VIEWの元のテーブルのindexって...
-
UPDATE文のWHERE条件に他のテー...
-
顧客データベースを作る場合、...
-
1日に1人がこなせるプログラム...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
datetime型でNULL値を入れたい。
-
多くの選択項目を処理(SELECT)...
-
並べ替え(Access)
-
ユニークなデータの件数を取り...
-
/dev/nullについて
-
フィルターかけた後、重複を除...
-
差し込み後、元データを変更し...
-
外部参照してるキーを主キーに...
-
エクセルで最後の文字だけ置き...
-
SQLで特定の項目の重複のみを排...
-
SELECT 文 GROUP での1件目を...
-
Outlook 送受信エラー
-
エクセルの関数について教えて...
-
for whichの使い方
-
EXISTSを使ったDELETE文
-
INSERT文でフィールドの1つだ...
-
access2021 VBA メソッドまたは...
-
UPDATE文のWHERE条件に他のテー...
-
SQLで列名を変数にできないでし...
-
1日に1人がこなせるプログラム...
おすすめ情報