java - 从 jDateChooser 获取值并保存到 MS sql DB

标签 java sql-server swing jdatechooser

我的对话框上有两个 jDateChooser,我想保存到该数据类型有问题的 MS-SQL DB。知道如何解决这个问题!只有当我将数据库中的数据类型转换为 nvarchar 并将值转换为从 jDateChooser 返回的字符串时,我才能执行此操作。

enter image description here

//我可以用这种方式保存,但我不使用 jDateChooser;

   java.util.Date utilDate = new java.util.Date();
   java.sql.Date sqldate = new java.sql.Date(utilDate.getTime());

//我无法使用 jDateChooser 保存日期

    java.sql.Date sqldate = new java.sql.Date(jDateChooser3.getDate());

//我找到的唯一方法

  SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy");

  String sd = dateFormat.format(jDateChooser3.getDate());

  obj.setStartDate(sd);

//

最佳答案

从您发布的代码来看,jDateChooser3.getDate() 返回一个 java.util.Date 实例,而 java.sql.Date( millis) 构造函数期望日期/时间为 long 毫秒值。

使用此代码,它将起作用:

java.sql.Date sqldate = new java.sql.Date(jDateChooser3.getDate().getTime());

由于它来自日期选择器组件,无效输入很可能会导致 null 返回日期,因此您可能还需要检查一下:

java.util.Date d = jDateChooser3.getDate();
if (d == null) {
    System.out.println("No date specified!");
} else {
    java.sql.Date sqldate = new java.sql.Date(d.getTime());
    // Do something with sqldate
}

关于java - 从 jDateChooser 获取值并保存到 MS sql DB,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23564363/

相关文章:

sql-server - 在 SQL Server 2008 R2 中按 F1 热键时挂起我的 Management Studio?

java - if else 语句不起作用 java

java - 如何修复computerChoice总是选择整数1的rock

java - JGoodies FormLayout 拒绝调整我的 JComboBox 大小

java:打印当前回溯

sql-server - 作为 SQL Server 前端 Access - ADO 与 DAO?

java - android AsyncStorage 和 OnSaveInstanceState 有什么区别

sql - "Version"是 TRANSACT-SQL 中的保留字吗? (显示蓝色但不在保留字列表中)

java - 在 long 变量中存储 12 位整数会出现编译错误,为什么?

java - Firebird CHAR_TO_UUID,因 GDS 异常而失败。 335544606