- PR -

変数(integer)にNullをセット

1
投稿者投稿内容
みのひき
常連さん
会議室デビュー日: 2003/07/17
投稿数: 26
投稿日時: 2003-08-06 18:52
こんにちは。
毎度お世話になっております。

整数型(Integer)の変数にNullをセットできません。

変数1 = vbNull
でも、
変数1 = Nothing

でもできないのですが、どのように処理すればよろしいのでしょうか?
ご存知の方がいらっしゃいましたら宜しくお願い致します。
なな
ぬし
会議室デビュー日: 2003/06/22
投稿数: 659
お住まい・勤務地: 愛知県
投稿日時: 2003-08-06 18:58
Integerは、参照型ではなく値型なので、Nullは設定できませんよ。
みのひき
常連さん
会議室デビュー日: 2003/07/17
投稿数: 26
投稿日時: 2003-08-06 19:25
返答ありがとうございます。

できないんですか。残念。

INSERT時にNullをセットしたいのですが、できないとなると
なにかまったく関係ない値をセットしといて、それを見て
DBNull.valueをINSERTしようかなと考えています。

もし他にいい方法がありましたらお願い致します。
なな
ぬし
会議室デビュー日: 2003/06/22
投稿数: 659
お住まい・勤務地: 愛知県
投稿日時: 2003-08-07 08:11
いまいちではありますが...
System.Object型で、Int32型の値以外に、null値を持つことが出来ます。

System.Object o = null;
o = new System.Int32();
o = 12;
if (o == null)
{
Console.WriteLine("o is NULL.");
}
else
{
Console.WriteLine("o is {0}.", o.ToString());
}
みのひき
常連さん
会議室デビュー日: 2003/07/17
投稿数: 26
投稿日時: 2003-08-07 10:51
なるほど。Objectで保持すればいいのか。
参考にさせて頂きます。
どうもありがとうございました。
あすかぜ
常連さん
会議室デビュー日: 2003/04/22
投稿数: 21
投稿日時: 2003-08-07 14:37
SQL用のint型として System.Data.SqlTypes.SqlInt32 という構造体があります。
http://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/cpref/html/frlrfsystemdatasqltypessqlint32classtopic.asp
int型の値とNull値を持つことができるようです。
objectにboxingするよりはいいかも。
1

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