| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1860 人关注过本帖
标题:标准表达式中数据类型不匹配
只看楼主 加入收藏
bao
Rank: 1
等 级:新手上路
帖 子:40
专家分:0
注 册:2008-5-24
收藏
 问题点数:0 回复次数:5 
标准表达式中数据类型不匹配
double cost=0;

cost=Double.parseDouble(rsd.getString( "end"))-Double.parseDouble(rsd.getString( "start"));
Statement sql=con.createStatement();
int rs=sql.executeUpdate("update stu set 余额=(余额-"+cost+") where 卡号='"+jComboBox2.getSelectedItem().toString()+"'"
);
end 和start 是自1900年以后的毫秒数 我的余额数据类型无论是双精度 还是长整形 都报错
java.sql.SQLException: [Microsoft][ODBC Microsoft Access Driver] 标准表达式中数据类型不匹配。
at sun.jdbc.odbc.JdbcOdbc.createSQLException(JdbcOdbc.java:6957)
at sun.jdbc.odbc.JdbcOdbc.standardError(JdbcOdbc.java:7114)
at sun.jdbc.odbc.JdbcOdbc.SQLExecDirect(JdbcOdbc.java:3110)
at sun.jdbc.odbc.JdbcOdbcStatement.execute(JdbcOdbcStatement.java:338)
at sun.jdbc.odbc.JdbcOdbcStatement.executeQuery(JdbcOdbcStatement.java:253)

都改成Integert也不行 这是怎么回事?
搜索更多相关主题的帖子: 式中 quot 整形 类型 数据 
2008-05-24 17:43
千里冰封
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:灌水之王
等 级:版主
威 望:155
帖 子:28477
专家分:59
注 册:2006-2-26
收藏
得分:0 
表是如何建的
还有,你怎么会用中文做列名呢?

可惜不是你,陪我到最后
2008-05-24 20:58
bao
Rank: 1
等 级:新手上路
帖 子:40
专家分:0
注 册:2008-5-24
收藏
得分:0 
回复 2# 千里冰封 的帖子
我用的数据库是ACCESS  用中文做列名没问题吧  我的表名 叫 stu  里面有卡号 余额 等列
2008-05-25 16:36
Ethip
Rank: 5Rank: 5
等 级:贵宾
威 望:15
帖 子:771
专家分:0
注 册:2008-1-18
收藏
得分:0 
回复 3# bao 的帖子
用中文字符做字段名是会出问题的,迟早的事,必然事件!!!
其他的错误先放一边!
2008-05-25 19:35
bao
Rank: 1
等 级:新手上路
帖 子:40
专家分:0
注 册:2008-5-24
收藏
得分:0 
哦 好的 我以后改正 那我现在的问题该如何解决?
2008-05-25 20:32
bao
Rank: 1
等 级:新手上路
帖 子:40
专家分:0
注 册:2008-5-24
收藏
得分:0 
其中的end和start字段 来自一个叫event的表 表示当前日期的毫秒数 当我用表格显示这个event
的表时 运行的时候只显示第一行 报错
java.sql.SQLException: [Microsoft][ODBC Microsoft Access Driver]非法的描述器索引
at sun.jdbc.odbc.JdbcOdbc.createSQLException(JdbcOdbc.java:6957)
at sun.jdbc.odbc.JdbcOdbc.standardError(JdbcOdbc.java:7114)
at sun.jdbc.odbc.JdbcOdbc.SQLColAttributes(JdbcOdbc.java:2613)
at sun.jdbc.odbc.JdbcOdbcResultSet.getColAttribute(JdbcOdbcResultSet.java:5444)
at sun.jdbc.odbc.JdbcOdbcResultSet.getColumnType(JdbcOdbcResultSet.java:6055)
at sun.jdbc.odbc.JdbcOdbcResultSet.getMaxCharLen(JdbcOdbcResultSet.java:5472)
at sun.jdbc.odbc.JdbcOdbcResultSet.getString(JdbcOdbcResultSet.java:278)
而且我发现其中的日期是1899年12月30日的 所以我想可能是日期出问题了
我的日期是这样写的
SimpleDateFormat sd=new SimpleDateFormat(" HH:mm:ss");
String str=sd.format(new Date());

Date date1=new Date();
long t1=date1.getTime();

jTextField2.setText(str);
jTextField1.setText(""+t1);
请各位看看这里有什么问题吗?
2008-05-26 16:31
快速回复:标准表达式中数据类型不匹配
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.039058 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved