SqlParameter中DateTime,Byte[]类型给数据库赋空值

本文介绍了在C#编程语言中如何处理DateTime类型变量的读写操作及Byte数组的参数设置。针对DateTime类型的变量,文章展示了如何通过属性进行get和set操作,并对参数的值进行判断和赋值;对于Byte数组,文中则提供了如何将其作为SqlParameter对象的一部分进行传递的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

1.DateTime

private DateTime? _dtBeginDate;

  public DateTime m_dtBeginDate

         {

             get { return _dtBeginDate; }

             set { _dtBeginDate = value; }

         }   

 

 

                arParams[10] = new SqlParameter("@EndDate", SqlDbType.DateTime);

                if (_dtEndDate == null)

                {

                    arParams[10].Value = DBNull.Value; 

                }

                else

                {

                    arParams[10].Value = _dtEndDate;

                } 

 

 

 

 

2.Byte[]

  new SqlParameter("@SO_OptionImage",SqlDbType.Image);

  arParams[4].Value = entity.SO_OptionImage;

 

using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Data.SqlClient; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; namespace _2 { public partial class Addnotepoint : Form { public Addnotepoint() { InitializeComponent(); } private void label1_Click(object sender, EventArgs e) { } private void Addnotepoint_Load(object sender, EventArgs e) { } private void textBox4_TextChanged(object sender, EventArgs e) { } private void label3_Click(object sender, EventArgs e) { } private void textBox3_TextChanged(object sender, EventArgs e) { } private void label4_Click(object sender, EventArgs e) { } private void pcbtn_Click(object sender, EventArgs e) { this.Close(); } private void pabtn_Click(object sender, EventArgs e) { //如果文本框内容为空,返回 if(textBox1.Text.Trim() == "" || textBox2.Text.Trim() == ""|| textBox4.Text.Trim() == "" || richTextBox1.Text.Trim() == ""|| dateTimePicker1.Text =="") { MessageBox.Show("有空项", "消息", MessageBoxButtons.OK, MessageBoxIcon.Warning); return; } // 在插入前添加输入验证 if (string.IsNullOrWhiteSpace(textBox1.Text) || !int.TryParse(textBox1.Text, out _)) { MessageBox.Show("PID必须为有效整数"); return; } if (string.IsNullOrWhiteSpace(textBox2.Text)) { MessageBox.Show("Pname不能为空"); return; } if (dateTimePicker1.Value > DateTime.Now) { MessageBox.Show("保存日期不能是未来时间"); return; } Dao2 dao = new Dao2(); dao.Connect(); // 确保连接已打开 // 使用参数化查询并指定实际字段名 string sql = @" INSERT INTO T_Point (Pid, Pname, Stype, [Content], Savedate) VALUES (@Pid, @Pname, @Stype, @Content, @Savedate)"; // 创建参数列表,使用实际字段名作为参数名 List<SqlParameter> parameters = new List<SqlParameter> { // Pid - 假设是整数类型 new SqlParameter("@Pid", SqlDbType.Int) { Value = int.Parse(textBox1.Text) }, // Pname - 文本类型 new SqlParameter("@Pname", SqlDbType.NVarChar) { Value = textBox2.Text }, // Stype - 文本类型 new SqlParameter("@Stype", SqlDbType.NVarChar) { Value = textBox4.Text }, // [Content] - 注意Content是SQL关键字,需要用方括号包裹 new SqlParameter("@Content", SqlDbType.NVarChar) { Value = richTextBox1.Text }, // Savedate - 日期类型 new SqlParameter("@Savedate", SqlDbType.DateTime) { Value = dateTimePicker1.Value } }; // 执行SQL命令 int n = dao.ExecuteParameterized(sql, parameters); if (n > 0) { MessageBox.Show("添加成功"); this.Close(); // 添加这行代码关闭窗口 } else { MessageBox.Show("添加失败"); } } private void textBox2_TextChanged(object sender, EventArgs e) { } private void richTextBox1_TextChanged(object sender, EventArgs e) { } } } 怎么添加图片
最新发布
07-04
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值