这是我的日期代码:
DateTime datetry = DateTime.Now;
lebeldet.Text = string.Format("{0:MMM/dd/yyyy h:mm tt}", datetry);
在标签中,它显示我想要的结果
但当它插入数据库并且水晶报告打印时,它看起来像这样。
这是我的插入代码。
crud.AddRecord("Update SalesTransaction Set Date = '" + Convert.ToDateTime(lebeldet.Text) + "' , Cashier = '" + cashier.Text + "', TotalSales = '" + totaldue.Text + "' , SubTotal = '" + subtotal.Text + "' , Discount = '" + discount.Text + "' , DiscountableSales = '" + totaldiscountablesales.Text + "' , Vat = '" + totalvat.Text + "' , VatableSales = '" + totalvatablesales.Text + "' where TransactionID = '" + salestransaction.TransactionID+"' ");
如何插入日期,例如" 2017年8月3日12:30 AM" ?
答案 0 :(得分:3)
但当它插入数据库并且水晶报告打印时,它看起来像......
数据库中的datetime
值或C#中的DateTime
值,不具有任何格式。它们代表着一种价值。在评估时,您会看到特定格式的字符串,例如使用ToString
方法。
在演示工具中,例如在SQL Management Studio或Visual Studio调试器中查看表中的字符串时,会发生对ToString
(或类似)的隐式调用,以便您可以看到数据。其格式特定于所使用的工具。它不是数据本身的一部分。
对于Crystal Reports和其他报告工具,您通常会找到一个单独的字段或函数来控制报告中显示的格式。您可以在报表设计中的字段上执行此操作,而不是在数据库中的数据上执行此操作。