添加到数据库的问题

benniaoyaofei 2007-07-03 10:10:43
我的数据库表里有很多字段,有10多个字段都是数字
我用textbox一一对应,但关于数字字段的textbox都不是必填的
我应该用什么方法处理,才不会产生输入字符串的格式不正确?
就是空值如何添加到数字字段/??
...全文
210 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
benniaoyaofei 2007-07-03
  • 打赏
  • 举报
回复
我有很多个textbox,而且不一定哪些为空
F15Eagle 2007-07-03
  • 打赏
  • 举报
回复
楼上说的有道理,如果允许为空就不做处理
if(TextBox1.Text!=null && TextBox1.Text!="")
{
//赋值语句
}
else
{
//不处理或赋空值DBNull.Value
}
fnstpl 2007-07-03
  • 打赏
  • 举报
回复
如果数据库某字段设置的是允许空,则不给它赋值就自然是空值了
Snowdust 2007-07-03
  • 打赏
  • 举报
回复
string id = "zawp";
string name = "wwwwwww";
string strCon = @"Data Source=(local);Integrated Security=SSPI;Initial Catalog =northwind";

// 直接在sql语句中写添加的参数名,这里没有做任何类型验证,在定义参数时需要准确的类型定义和长度设置
string delegeSql = "insert into Customers(CompanyName,CustomerID) values(@Name,@id)";

SqlConnection strConn = new SqlConnection(strCon);
strConn.Open();

SqlDataAdapter thisAdapter = new SqlDataAdapter(delegeSql, strCon);
SqlCommandBuilder thisBuilder = new SqlCommandBuilder(thisAdapter);
Console.WriteLine(thisAdapter.SelectCommand.CommandText);


SqlCommand strComm = new SqlCommand(delegeSql, strConn);

//生成一个名字为@Id的参数,在这里必须要准确设定参数类型和类型长度,并且必须以@开头表示是添加的参数
//注意可以用一个SqlParameter对像来添加多个参数,并且这里的参数定义、添加可以不安照sql语句里参数值的顺序(如果是存储过程的话,要注意顺序)
SqlParameter para = new SqlParameter("@id", SqlDbType.NChar, 5);
para.Value = id;
strComm.Parameters.Add(para);

para = new SqlParameter("@name", SqlDbType.NVarChar, 40);
if (string.IsNullOrEmpty(name))
{
para.Value = DBNull.Value;
}
else
{
para.Value = name;
}
//注意以上这几句
strComm.Parameters.Add(para);



strComm.ExecuteNonQuery();

strConn.Close();
benniaoyaofei 2007-07-03
  • 打赏
  • 举报
回复
Snowdust(雪尘)
请问如何传呢?
Snowdust 2007-07-03
  • 打赏
  • 举报
回复
传参数,所有文本框都传进去,如果某个文本框为空,传入一个DBNull.Value。
benniaoyaofei 2007-07-03
  • 打赏
  • 举报
回复
我不想把0插入表
况且我有很多个textbox,不一定哪个为空
小y的CSDN博客 2007-07-03
  • 打赏
  • 举报
回复
if(text.Text.trim().length()==0)
text.Text=0;

110,537

社区成员

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

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

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