Java 从netbeans向数据库mysql插入数据
我的登记表上有一堆。我不明白错误在哪里 这是我的连接:Java 从netbeans向数据库mysql插入数据,java,mysql,swing,netbeans,insert,Java,Mysql,Swing,Netbeans,Insert,我的登记表上有一堆。我不明白错误在哪里 这是我的连接: package login; import java.sql.*; import java.text.SimpleDateFormat; import javax.swing.*; public class register extends javax.swing.JFrame { public PreparedStatement pst; public Connection cn; public Statement st; pub
package login;
import java.sql.*;
import java.text.SimpleDateFormat;
import javax.swing.*;
public class register extends javax.swing.JFrame {
public PreparedStatement pst;
public Connection cn;
public Statement st;
public register() {
initComponents();
try {
Class.forName("com.mysql.jdbc.Driver");
cn=DriverManager.getConnection("jdbc:mysql://localhost:3306/tugas?zeroDateTimeBehavior=convertToNull","root","");
st=cn.createStatement();
JOptionPane.showMessageDialog(null, "Connected");
} catch (Exception e) {
JOptionPane.showMessageDialog(null, "Not Connected");
}
}
我有按钮单击保存或插入数据库,但失败或错误:
private void btnsumbitActionPerformed(java.awt.event.ActionEvent evt) {
try {
String sql = "INSERT INTO `pasien`(`Username`, `Password`, `Nama_Depan`, "
+ "`Nama_Belakang`, `Tanggal_Lahir`, `Alamat`, `No_Telp`, `Jenis_Kelamin`) "
+ "VALUES (?,?,?,?,?,?,?,?)";
pst = cn.prepareStatement(sql);
pst.setString(1, user.getText());
pst.setString(2, String.valueOf(pass.getPassword()));
pst.setString(3, nmdepan.getText());
pst.setString(4, nmblkg.getText());
pst.setString(5, ((JTextField)txt_Date.getDateEditor().getUiComponent()).getText());
pst.setString(6, alamat.getText());
pst.setString(7, telp.getText());
pst.setString(8, kelamin.getSelectedItem().toString());
pst.execute();
JOptionPane.showMessageDialog(null, "Register Berhasil");
} catch (Exception e) {
JOptionPane.showMessageDialog(null, "Terjadi Kesalahan");
}
}
此代码可以执行,但无法插入数据库或失败 请提供更多信息:
- sql表变量
- 输出误差
try {
//You code there
}
catch (SQLException e) {
while (e != null) {
System.out.println("\n Message: " + e.getMessage());
System.out.println("\n SQLState: " + e.getSQLState());
System.out.println("\n ErrorCode: " + e.getErrorCode());
e = e.getNextException();
}
}
不要在失败时输出固定的(无用的)错误消息。mysql可以/将告诉您出了什么问题。异常本身应该包含来自mysql的错误代码/文本…这是我的数据库用户名数据:varchar(20),密码:varchar(20),Nama_Depan:varchar(20),Nama_Belakang:varchar(20),Tanggal_Lahir:date,Alamat:varchar(100),No_Telp:varchar(15),Jenis_Kelamin:varchar(10)我输入了代码,但无法编译/出错,所以数据库中的类型数据是用户名:varchar(20),密码:varchar(20),Nama_Depan:varchar(20),Nama_Belakang:varchar(20),Tanggal_Lahir:date,Alamat:varchar(100),No_Telp:varchar(15),Jenis_Kelamin:varchar(10)