黑马程序员技术交流社区
标题:
WPF之可空数据类型
[打印本页]
作者:
xinchenglong
时间:
2013-8-24 17:53
标题:
WPF之可空数据类型
通过学习WPF中的视频教程,第一次了解到可空数据类型。
可空数据类型如:引用类型、string,自己定义的类等。
不可空的数据类型:值类型等。
在程序中这样写就是错误的, int a=null;(错误)
nt?i=null;在不可为空的类型后加?然后就可以等于null了
虽然对可空数据类型有个初步了解,但是还不能完全理解,请各位看官解释一下,数据库中的null和这里的null又有什么区别呢?
作者:
追梦无悔
时间:
2013-8-24 17:58
数据库中的null相当于wpf中的" "(什么都没有),在数据库中" "(什么都没有)则在wpf中是null
作者:
彭家贰小姐
时间:
2013-8-26 06:59
在数据库中,NULL表示
不知道
,
空表示
没有
。不一样。
123.png
(4.35 KB, 下载次数: 4)
下载附件
2013-8-26 06:46 上传
代码中
DBNull.Value
表示数据库中的NULL
为了避免SQL的注入我们会利用参数化
cmd.Parameters.Add(new SqlParameter("@name", name));
如果name的值为null,那么将会报错,因为SqlParameter中第二个参数如果为null,则表示没有提供参数。
所以我们在往数据库中插值的时候
public static object ToDbValue(object value)
{
if (value == null)
{
return DBNull.Value;
}
else
{
return value;
}
}
如果值为null就要转为
DBNull.Value
同样的,如果是从数据库中读取,则:
public static object FromDbValue(object value)
{
if (value == DBNull.Value)
{
return null;
}
else
{
return value;
}
}
也就是说如果数据库中是NULL的话,到了代码里是DBNull.Value,再转一下就好了。
当你从数据库中读取到DataSet的时候,得到DataTable,然后到每一列column
其中有:
column.AllowDBNull 是否允许为null
column.DataType.IsValueType 是否是值类型
作者:
xinchenglong
时间:
2013-8-26 14:07
哦,数据库中的空置原来是这样操作的啊!
作者:
xinchenglong
时间:
2013-8-26 14:07
哦,数据库中的空置原来是这样操作的啊!
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2