我正在尝试使用Java jdbc连接在mysql数据库中插入一行。。。。
这是我的密码,
public class DBPreparedStatement2 {
public static void main(String[] args) throws ParseException{
try {
ArrayList<Student> slist = new ArrayList<Student>();
String sDate1="1998/11/04";
java.sql.Date dob=(java.sql.Date) new SimpleDateFormat("yyyy/MM/dd").parse(sDate1);
slist.add(new Student(6,"James","Bond",dob,10,"jb@yahoo.com"));
Class.forName("com.mysql.jdbc.Driver");
Connection
con=DriverManager.getConnection("jdbc:mysql://localhost:3306/school","root","root");
String insertCommand="INSERT INTO STUDENTS VALUES(?,?,?,?,?,?)";
PreparedStatement ps=con.prepareStatement(insertCommand);
for(Student student:slist) {
ps.setInt(1, student.id);
ps.setString(2, student.firstName);
ps.setString(3, student.lastName);
ps.setDate(4, student.dob);
ps.setInt(5, student.studClass);
ps.setString(6, student.email);
}
}catch(ClassNotFoundException e1) {
e1.printStackTrace();
}catch(SQLException e) {
e.printStackTrace();
}
}
}
当我尝试运行代码时,我得到类强制转换异常。。。非常感谢您的帮助。这是我的学生。java类
import java.sql.Date;
public class Student {
int id;
String firstName;
String lastName;
Date dob;
int studClass;
String email;
public Student() { }
public Student(int id,String firstName,String lastName,java.sql.Date dob,int studClass,String email) {
this.id = id;
this.firstName = firstName;
this.lastName = lastName;
this.dob = dob;
this.studClass = studClass;
this.email = email;
}
}
当我运行代码时,我得到以下错误:线程“main”java中出现异常。lang.ClassCastException:类java。util。日期不能转换为java类。sql。jdbcsample中的日期(java.util.Date位于加载器“bootstrap”的模块java.base中;java.sql.Date位于加载器“platform”的模块java.sql中)。DBPreparedStatement2。main(DBPreparedStatement2.java:25)
您的例外来自这一行:
java.sql.Date dob = (java.sql.Date) new SimpleDateFormat("yyyy/MM/dd").parse(sDate1);
因为parse将返回一个java。util。日期,而不是java。sql。日期。您不能强制转换为java。sql。日期,因为两者不相关。
您可以通过实例化java.sql.Date
来摆脱它
java.sql.Date dob = new java.sql.Date(new SimpleDateFormat("yyyy/MM/dd")
.parse(sDate1)
.getTime());
但我建议您避免使用java。util。日期,改为使用:
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy/MM/dd");
LocalDate localDate = LocalDate.parse(sDate1, formatter);
java.sql.Date dob = java.sql.Date.valueOf(localDate);
我正在尝试使用JavaFX从数据选择器向mysql数据库插入日期。我累了提交这个代码。 当我运行我的程序时,它给了我这个错误
注意:在MySQL表中,此列的数据类型我选择了日期数据类型 我只是有问题的日期部分查询插入日期:
问题内容: 我需要找出一种将带有字段的记录插入数据库的方法,但我陷入了困境。 有谁知道我该怎么做?现在我有类似的东西。 但是,当我运行类似这样的命令时,出现错误:值的字符串表示形式的语法不正确。 这是sql语句的样子: 谢谢 问题答案: 当然,这将使你的代码更好,但是要回答你的问题,你需要告诉的字符串表示形式。在中(你不指定数据库供应商的名称),使用以下函数将字符串日期转换为:
问题内容: 我试图将图像存储在数据库中,由于某种原因,它似乎无法正常工作。这是我桌子的结构。 这是我的查询,它插入图像或至少多数民众赞成在什么: 如果我打印file_get_contents($ tmp_image)的值,那么屏幕上会有大量数据。但是,此值不会存储在数据库中,这就是我面临的问题。 问题答案: 问题 这会在PHP中创建一个名为的字符串。暂时不要使用MySQL,因为您尚未执行任何查询。
问题内容: 我使用Google Maps API制作了一个非常简单的页面,其中有几个字段,用户将在其中放置一些数据。看起来像- http://aiworker2.usask.ca/marker_field_db.html 我要做的是使用javascript / Ajax将数据存储到MySQL数据库中。我发现了几个使用Jquery的示例。我是这个javascript / Ajax / Jquery平
问题内容: 我在同一服务器上的2个不同数据库中有2个相同的表。将数据从表复制到另一个表的最佳方法是什么? 问题答案: 使用: 存在是经过简化的,但是如果有主键/ auto_increment可以担心/等,那么您就省去了。