代码之家  ›  专栏  ›  技术社区  ›  mahesh

参数日期转换

  •  0
  • mahesh  · 技术社区  · 14 年前

    我有日期转换问题,我的SQL表有如下字段

    领域:

    datefrom    
    dateto
    

    我在C中的SQL查询是

    string sql = "insert into companymast (cname, datefrom, dateto) values(@cname, @datefrom, @dateto)";
    
    SqlCommand cmd = new SqlCommand(sql, con);
    cmd.Parameters.Add("@cname",SqlDbType.Varchar(50)).Values = cname.text;
    cmd.Parameters.Add("@datefrom",SqlDbType.Datetime).Values = maskedTextBox1.text;
    cmd.Parameters.Add("@dateto",SqlDbType.Datetime).Values = maskedTextBox2.text;
    cmd.ExecuteNonQuery();
    

    但上面抛出的错误类似于date非转换字符串到date

    我得把日期填进去 dd/MM/yyyy

    那我该怎么办?

    请帮帮我。

    1 回复  |  直到 14 年前
        1
  •  0
  •   tdammers    14 年前

    maskedBox1.text 是字符串。你把它分配给一个 SqlParameter

    一种更为固态的溶液会转化为 DateTime 显式,并将转换后的值传递给 SqlParameter参数

    DateTime fromDate = DateTime.Parse(maskedTextBox1.text);
    cmd.Parameters.Add("@datefrom",SqlDbType.Datetime).Values= fromDate;
    

    为了DateTime.Parse文件,请参见: http://msdn.microsoft.com/en-us/library/1k1skd40.aspx