从数据库读取数据到DataTable中 遇到null就不读吗?

destinyC 2010-04-27 09:36:11
public DataTable LoadUserInfo(string uid)
{
string sql = "SELECT * FROM USERS WHERE LOGINID='" + uid + "'";
OpDB op = new OpDB(connectionString);//初始化数据库连接
DataTable dt = op.ResponseUserInfo(sql);
dt.TableName = uid + "的资料";
op.Close();
return dt;
}

public DataTable ResponseUserInfo(string sql)
{
DataTable dt=new DataTable ();
OracleDataAdapter oda = new OracleDataAdapter(sql, conn);
oda.Fill(dt);
return dt;
}

public void WrtieXML(string uid)
{
DataTable dt = LoadUserInfo(uid);
DataSet ds = new DataSet();
ds.Tables.Add(dt);
ds.WriteXml(path);
}

然后我查看xml文档,发现数据库中只要是ROWS中的某一column为null,xml中就没有这一字段。
...全文
179 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
huihuilunhua 2010-04-27
  • 打赏
  • 举报
回复
DING A HAHA
段传涛 2010-04-27
  • 打赏
  • 举报
回复
是空 就try 下吧。毕竟那个是个对象。
sxiaohui8709253 2010-04-27
  • 打赏
  • 举报
回复
读出Null 也可以啊


select case 你可能为null的字段名 when is null then null else 你可能为null的字段名 end as 你可能为null的字段名 from table
destinyC 2010-04-27
  • 打赏
  • 举报
回复
to:1,3楼
第2段代码是在OpDB类里面。

to:4楼
有没有什么方法可以在读取的时候,读出null呢?
yufenghua 2010-04-27
  • 打赏
  • 举报
回复
默认是不读的。。
hepeng_8 2010-04-27
  • 打赏
  • 举报
回复
string sql = "SELECT * FROM USERS WHERE LOGINID='" + uid + "'";
OpDB op = new OpDB(connectionString);
op.Open();
DataTable dt = ResponseUserInfo(sql);
dt.TableName = uid + "的资料";
op.Close();
return dt;
sxiaohui8709253 2010-04-27
  • 打赏
  • 举报
回复

select isnull(你可能为null的字段名,'无记录') as 你可能为null的字段名 from table ...
qq389900275 2010-04-27
  • 打赏
  • 举报
回复
string sql = "SELECT * FROM USERS WHERE LOGINID='" + uid + "'";
OpDB op = new OpDB(connectionString);
op.Open();
DataTable dt = ResponseUserInfo(sql);
dt.TableName = uid + "的资料";
op.Close();
return dt;

110,539

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧