【发布时间】:2010-11-19 19:41:44
【问题描述】:
我有一个与远程数据库交互的 Windows 窗体应用程序。数据库包含 2 个表。
用户可以在 MaskedTextBox 中输入日期,然后通过单击按钮并发出声明来更新记录。然而,由于 MySQL 日期列采用 YYYY-MM-DD 格式,因此使用 maskedtextbox 很烦人。因此,用户必须在蒙版文本框中输入例如 2010-11-15 才能使其工作(这有效,但输入这种格式并不那么直观)。我想改用 DateTimePicker,但由于此控件“文本”属性提供格式 DD-MM-YYYY,所以当我转换为字符串时,它看起来像 15-11-2010。 MySQL 显然没有正确处理这个。
处理此问题的最佳方法是什么,我应该从 Datetimepicker.text 中解析 3 组数字(日、月、年)吗?或者有没有办法改变MySQL日期的实际格式?或者我可以编辑 SQL 语句以便更改返回日期的格式吗?
这是我正在使用的 sql 语句,以防万一:
commandinsert.CommandText = "insert into jobs (id,date) values ('" + comboBox1.Text + "','" + maskedTextBox1.Text + "')";
提前致谢。
【问题讨论】:
-
你有一个 SQL 注入漏洞。