java与sql server2000连接,并插入数据,能插入数字,但一用字母或中文就抛出异常。代码如下:

public void actionPerformed(ActionEvent e){
if(e.getSource()==add){
String Sno=tnum.getText();
String Sname=tsname.getText();
String Cno=tcno.getText();
String Cname=tcname.getText();
String Tno=ttno.getText();
String Tname=ttname.getText();
String Scoure=tscoure.getText();
if(!(Sno.length()==0||Sname.length()==0||Cno.length()==0||Cname.length()==0||Tno.length()==0||Tname.length()==0||Scoure.length()==0))
{
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
String dbUrl="jdbc:odbc:mysql";
Connection c=DriverManager.getConnection(dbUrl,"","");
Statement s=c.createStatement();
ResultSet rs=s.executeQuery("select * from StudentCoure where Cno='"+Cno+"'");
if(rs.next())
JOptionPane.showMessageDialog(null, "该科目已存在 ");
else{
s.executeUpdate("insert into StudentCoure values("+Sno+","+Sname+","+Cno+","+Cname+","+Tno+","+Tname+","+Scoure+")");
JOptionPane.showMessageDialog(null, "添加成功");
}
s.close();
c.close();
}
catch(Exception e5){
JOptionPane.showMessageDialog(null, "出错 ");
}
}
else {
JOptionPane.showMessageDialog(null, "添加完全信息");
}

}

如果你是数字或中文,你的数据应该是字符串形式的,用单引号括起来就行了。如:
s.executeUpdate("insert into StudentCoure values('"+Sno+"','"+Sname+"','"+Cno+"','"+Cname+"','"+Tno+"','"+Tname+"','"+Scoure+"')");

这样你试试,如果还是不行你将sql打印出来拿到数据库中去执行下,看提示什么错误在补充。希望我的回答对你有所帮助。
温馨提示:内容为网友见解,仅供参考
无其他回答

java与sql server2000连接,并插入数据,能插入数字,但一用字母或中文就...
如果你是数字或中文,你的数据应该是字符串形式的,用单引号括起来就行了。如:s.executeUpdate("insert into StudentCoure values('"+Sno+"','"+Sname+"','"+Cno+"','"+Cname+"','"+Tno+"','"+Tname+"','"+Scoure+"')");这样你试试,如果还是不行你将sql打印出来拿到数据库中去...

java连接sqlserver时forName抛出异常
Class.forName(DRIVER);里的DRIVER需要类的全部路径包括包名。如:DRIVER = “com.microsoft.jdbc.sqlserver.SQLServerDriver”;Class.forName(DRIVER);

...Microsoft][SQLServer 2000 Driver for JDBC]Error establishing...
String DBURL= "jdbc:microsoft:sqlserver:\/\/localhost:1433;DatabasesName=school";这句话不对,应该是:String DBURL= "jdbc:sqlserver:\/\/localhost:1433;DatabasesName=school";这样就没有问题了。

Java 抛出异常是怎么回事?谢谢...望能提供答案...
有两个来源,一是Java运行时环境自动抛出系统生成的异常,而不管你是否愿意捕获和处理,它总要被抛出!比如除数为0的异常。二是程序员自己抛出的异常,这个异常可以是程序员自己定义的,也可以是Java语言中定义的,用throw 关键字抛出异常,这种异常常用来向调用者汇报异常的一些信息。 异常是针对方法来说的,抛出、声明抛出...

eclipse用jdbc连接SQL server时出现了问题……这是什么情况啊!请大神...
win+R 输入cmd 进入命令行 输入 java -version 二、加载驱动程序并建立连接对象 1.sql server的连接代码:\/\/加载 Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");、\/\/连接数据库 Connection con = DriverManager.getConnection("jdbc:sqlserver:\/\/localhost:1433;DatabaseName=xxx", user...

常见JAVA运行时异常有哪些?
1、五种常见的异常:ClassCastException(类转换异常)、IndexOutOfBoundsException(数组越界异常)、NullPointerException(空指针异常)、ArrayStoreException(数据存储异常,操作数组时类型不一致)、BufferOverflowException(还有IO操作的,缓冲溢出异常)。2、java运行时异常是可能在java虚拟机正常工作时抛出的异常。java...

需要一段用java写的游戏登陆界面要与数据库连接的代码
使用JDBC进行数据库的增删改查操作1.下载Microsoft SQL Server 2005 JDBC 驱动包jar文件 将jar文件引入工程中2.封装数据库链接的获取和关闭操作import java.sql.*;public class BaseDao { \/ 数据库驱动类的字符串,完整的包名加类名 在工程中查看添加的jar文件 能看到这个类 \/ private static final ...

C或Java中的异常处理机制的简单原理和应用
异常对象通常有两种构造函数:一种是无参数的构造函数;另一种是带一个字符串的构造函数,这个字符串将作为这个异常对象除了类型名以外的额外说明。3.2.4 创建自己的异常:当Java内置的异常都不能明确的说明异常情况的时候,需要创建自己的异常。需要注意的是,唯一有用的就是类型名这个信息,所以不要在...

java的各种异常
字符串转换为数字异常:NumberFormatException操作数据库异常:SQLException输入输出异常:IOException方法未找到异常:NoSuchMethodExceptionjava.lang.AbstractMethodError抽象方法错误。当应用试图调用抽象方法时抛出。java.lang.AssertionError断言错。用来指示一个断言失败的情况。java.lang.ClassCircularityError类循环依赖错误。在初始...

Java ServerSocket accept运行一段时间不再接受新的连接了,这是为什么...
1、while循环,只要你没有修改过receiveStatus,是不会自然结束的 2、你在while里立刻就try了,所以如果产生了Exception,是不可能结束的 结论:有3个可能:1、从你代码看checkClient方法不是异步的,所以如果它停在某处,则整个程序都停了 2、调用Recevie类的方法本身出现了异常(就是new Receive()....

相似回答
大家正在搜