- PR -

ADO.NETで、NUll値を挿入する方法

1
投稿者投稿内容
きつつき
会議室デビュー日: 2001/10/21
投稿数: 14
投稿日時: 2003-07-07 19:58
 C#を使って、ADO.NET経由でデータベースを利用していますが、"INSERT"文でNULL値の挿入方法が分かりません。
 ご存知の方、ご教授ください。
なな
ぬし
会議室デビュー日: 2003/06/22
投稿数: 659
お住まい・勤務地: 愛知県
投稿日時: 2003-07-07 20:04
System.DBNullを使用しますが...。
具体的に、どのような方法でINSERTしていますか?
きつつき
会議室デビュー日: 2001/10/21
投稿数: 14
投稿日時: 2003-07-07 20:11
 下のSQL文のように、文字列の変数を利用しています。やっぱり、条件によってSQL文を作成する必要があるのでしょうか?

INSERT INTO テーブル (項目名) VALUES ('" + stringValue + "')
なな
ぬし
会議室デビュー日: 2003/06/22
投稿数: 659
お住まい・勤務地: 愛知県
投稿日時: 2003-07-07 20:15
文字列連結ですね。

条件によってSQL文を変更するか、
(DBに依存しますが)
SQL文で変換関数を通すしかないと思います。
(''のときは、NULLにするとか)
きつつき
会議室デビュー日: 2001/10/21
投稿数: 14
投稿日時: 2003-07-07 20:29
 "SqlString"クラスがありますが、このクラスに"SqlString.Null"を代入して利用することはできないですか。
 "SqlString"クラスはどのような時に利用するのですか?
なな
ぬし
会議室デビュー日: 2003/06/22
投稿数: 659
お住まい・勤務地: 愛知県
投稿日時: 2003-07-08 08:20
わたしは使ったことありませんが、
System.Data.SqlTypes名前空間に、少し説明があります。

> SQL Server内のネイティブデータ型のクラス

System.DBNullと同じ位置付けのものだと思います。
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2003-07-08 10:10
こんにちは。

 対象のデータベースは何でしょうか。文字列連結でSQL文を作っているなら、データベースによってNULLを表す文字が変わると思います。

 sqlStringクラスの話は、文字列連結ではなく、パラメータ指定を行う場合です。
1

スキルアップ/キャリアアップ(JOB@IT)