C# ASP.NET与SQL Server中,将空值插入数据库表中的问题?
通过添加页面向数据库中插入记录。是用存储过程实现的,表中的字段有的是不能为空的,我在添加页面的textbox中填写数据时,当我把所有的textbox都填上数据后,点击添加...
通过添加页面向数据库中插入记录。是用存储过程实现的,表中的字段有的是不能为空的,我在添加页面的textbox中填写数据时,当我把所有的textbox都填上数据后,点击添加按钮,能顺利的让数据添加到数据库表中;当有的textbox不填数据时(这些textbox代表的字段在数据库中是可为空的),再点击添加按钮后,就会出现错误提示:输入字符串的格式不正确。那位大侠能帮帮忙解决一下,谢谢了先!
下面是我的存储过程和添加代码:
存储过程:
CREATE PROCEDURE addqingmian
@pname varchar(50),@pdate datetime,@wweight float(8),@dweight float(8),@huichao float(8),@mweight float(8),@jweight float(8),@clong float(8),@slong float(8),
@shenchang float(8),@lspeed float(8),@fspeed float(8)
as insert into qingmian
(pname,pdate,wweight,dweight,huichao,mweight,jweight,clong,slong,shenchang,lspeed,fspeed)
values
(@pname,@pdate,@wweight,@dweight,@huichao,@mweight,@jweight,@clong,@slong,@shenchang,@lspeed,@fspeed)
GO
添加代码:
private void btok_Click(object sender, System.EventArgs e)
{
if(Page.IsValid)
{
SqlCommand cm=new SqlCommand("addqingmian",cn);
cm.CommandType=CommandType.StoredProcedure;
cm.Parameters.Add(new SqlParameter("@pname",SqlDbType.VarChar,50));
cm.Parameters.Add(new SqlParameter("@pdate",SqlDbType.DateTime,8));
cm.Parameters.Add(new SqlParameter("@wweight",SqlDbType.Float,8));
cm.Parameters.Add(new SqlParameter("@dweight",SqlDbType.Float,8));
cm.Parameters.Add(new SqlParameter("@huichao",SqlDbType.Float,8));
cm.Parameters.Add(new SqlParameter("@mweight",SqlDbType.Float,8));
cm.Parameters.Add(new SqlParameter("@jweight",SqlDbType.Float,8));
cm.Parameters.Add(new SqlParameter("@clong",SqlDbType.Float,8));
cm.Parameters.Add(new SqlParameter("@slong",SqlDbType.Float,8));
cm.Parameters.Add(new SqlParameter("@shenchang",SqlDbType.Float,8));
cm.Parameters.Add(new SqlParameter("@lspeed",SqlDbType.Float,8));
cm.Parameters.Add(new SqlParameter("@fspeed",SqlDbType.Float,8));
cm.Parameters["@pname"].Value=tbname.Text;
cm.Parameters["@pdate"].Value=tbdate.Text;
cm.Parameters["@wweight"].Value=tbwweight.Text;
cm.Parameters["@dweight"].Value=tbdweight.Text;
cm.Parameters["@huichao"].Value=tbhuichao.Text;
cm.Parameters["@mweight"].Value=tbmzh.Text;
cm.Parameters["@jweight"].Value=tbjzh.Text;
cm.Parameters["@clong"].Value=tbclong.Text;
cm.Parameters["@slong"].Value=tbslong.Text;
cm.Parameters["@shenchang"].Value=tbshch.Text;
cm.Parameters["@lspeed"].Value=tblspeed.Text;
cm.Parameters["@fspeed"].Value=tbfspeed.Text;
cm.Connection.Open();
try
{
cm.ExecuteNonQuery();
lblnote.Text="添加成功";
}
catch(SqlException ex)
{ throw ex;
}
cm.Connection.Close();
}
} 展开
下面是我的存储过程和添加代码:
存储过程:
CREATE PROCEDURE addqingmian
@pname varchar(50),@pdate datetime,@wweight float(8),@dweight float(8),@huichao float(8),@mweight float(8),@jweight float(8),@clong float(8),@slong float(8),
@shenchang float(8),@lspeed float(8),@fspeed float(8)
as insert into qingmian
(pname,pdate,wweight,dweight,huichao,mweight,jweight,clong,slong,shenchang,lspeed,fspeed)
values
(@pname,@pdate,@wweight,@dweight,@huichao,@mweight,@jweight,@clong,@slong,@shenchang,@lspeed,@fspeed)
GO
添加代码:
private void btok_Click(object sender, System.EventArgs e)
{
if(Page.IsValid)
{
SqlCommand cm=new SqlCommand("addqingmian",cn);
cm.CommandType=CommandType.StoredProcedure;
cm.Parameters.Add(new SqlParameter("@pname",SqlDbType.VarChar,50));
cm.Parameters.Add(new SqlParameter("@pdate",SqlDbType.DateTime,8));
cm.Parameters.Add(new SqlParameter("@wweight",SqlDbType.Float,8));
cm.Parameters.Add(new SqlParameter("@dweight",SqlDbType.Float,8));
cm.Parameters.Add(new SqlParameter("@huichao",SqlDbType.Float,8));
cm.Parameters.Add(new SqlParameter("@mweight",SqlDbType.Float,8));
cm.Parameters.Add(new SqlParameter("@jweight",SqlDbType.Float,8));
cm.Parameters.Add(new SqlParameter("@clong",SqlDbType.Float,8));
cm.Parameters.Add(new SqlParameter("@slong",SqlDbType.Float,8));
cm.Parameters.Add(new SqlParameter("@shenchang",SqlDbType.Float,8));
cm.Parameters.Add(new SqlParameter("@lspeed",SqlDbType.Float,8));
cm.Parameters.Add(new SqlParameter("@fspeed",SqlDbType.Float,8));
cm.Parameters["@pname"].Value=tbname.Text;
cm.Parameters["@pdate"].Value=tbdate.Text;
cm.Parameters["@wweight"].Value=tbwweight.Text;
cm.Parameters["@dweight"].Value=tbdweight.Text;
cm.Parameters["@huichao"].Value=tbhuichao.Text;
cm.Parameters["@mweight"].Value=tbmzh.Text;
cm.Parameters["@jweight"].Value=tbjzh.Text;
cm.Parameters["@clong"].Value=tbclong.Text;
cm.Parameters["@slong"].Value=tbslong.Text;
cm.Parameters["@shenchang"].Value=tbshch.Text;
cm.Parameters["@lspeed"].Value=tblspeed.Text;
cm.Parameters["@fspeed"].Value=tbfspeed.Text;
cm.Connection.Open();
try
{
cm.ExecuteNonQuery();
lblnote.Text="添加成功";
}
catch(SqlException ex)
{ throw ex;
}
cm.Connection.Close();
}
} 展开
3个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询