数据库程序再错,求教求教!
我发现我快崩溃了,照着写两个数据库方面的程序都不成功,下面是程序源码:package fouth;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.Date;
public class DoUpdateTest {
private Connection con;
public static void main(String[] args) {
DoUpdateTest test =new DoUpdateTest();
Connection con=test.getConnection();
try{
Statement st=con.createStatement();
String sql="insert into student values('张丽','20021023','1978-6-10','英语','山东')";
st.executeUpdate(sql);
System.out.println("执行修改前的记录");
test.getStudent(con);
System.out.println("执行修改后的记录");
sql="update student set 姓名='张萧远' where 姓名='王成'";
st.executeUpdate(sql);
test.getStudent(con);
System.out.println("执行删除后的记录");
sql="delete student where 姓名='张丽'";
st.executeUpdate(sql);
test.getStudent(con);
st.close();
test.clone();
}catch(Exception ex){
ex.printStackTrace();
}
}
private void getStudent(Connection con2) {
try{
Statement st=con.createStatement();
String sql="select * from student";
ResultSet rs=st.executeQuery(sql);
while(rs.next()){
String name=rs.getString("姓名");
String number=rs.getString("学号");
Date date=rs.getDate("出生日期");
String spe=rs.getString("专业");
String address=rs.getString("籍贯");
System.out.println("\n姓名:"+name+"\t学号:"+number+
"\t出生日期:"+date+"\t专业:"+spe+"\t籍贯:"+address);
}
st.close();
}catch(Exception ex){
ex.printStackTrace();
}
}
private Connection getConnection() {
try{
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
con=DriverManager.getConnection("jdbc:microsoft:sqlserver://127.0.0.1:1433;databasename=pubs","sa","");
}catch(Exception ex){
ex.printStackTrace();
}
return con;
}
}
出现了一下问题:
执行修改前的记录
姓名:?????? 学号:20021022 出生日期:1977-06-07 专业:???? 籍贯:??±±
姓名:???? 学号:20021023 出生日期:1978-06-10 专业:???? 籍贯:????
执行修改后的记录
姓名:?????? 学号:20021022 出生日期:1977-06-07 专业:???? 籍贯:??±±
姓名:???? 学号:20021023 出生日期:1978-06-10 专业:???? 籍贯:????
执行删除后的记录
姓名:?????? 学号:20021022 出生日期:1977-06-07 专业:???? 籍贯:??±±
java.lang.CloneNotSupportedException: fouth.DoUpdateTest
at java.lang.Object.clone(Native Method)
at fouth.DoUpdateTest.main(DoUpdateTest.java:30)
实在看不懂了,这个程序实在没什么问题啊,为什么输出的还是乱码呢?