- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
尝试使用 Java JDBC 代码将记录添加到 SolidDB 时,出现以下错误。
下面是抛出异常的方法:
public void addData(User data) {
Connection conn = null;
try {
conn = dataSource.getConnection();
if (conn == null || conn.isClosed()) {
throw new RuntimeException("Could not open connection");
}
String query="INSERT INTO USER "
+ "(ID, NAME, PASSWORD, ENABLED, REQUIRE_RESET)"
+ "VALUES (?, ?, ?, ?, ?);";
PreparedStatement ps = conn.prepareStatement(query);
// "ID" column is INTEGER, and partition field in UserData is int.
ps.setString(1, data.getId());
ps.setString(2, data.getName());
ps.setString(3, data.getPassword());
// "ENABLED" column is INTEGER, and enabled field in UserData is boolean.
ps.setInt(4, data.isEnabled()? 1:0);
ps.setString(5, data.isRequireReset()?"Y":"N");
if (ps.executeUpdate() < 1) {
throw new RuntimeException("Could not save User, executeUpdate() returned a value < 1");
}
} Catch (SQLException e) {
throw new DataLayerException("Could not save the User Data.", e);
} finally {
if (conn != null) {
try {
conn.close();
} catch (SQLException e) {
}
}
}
}
我尝试过直接硬编码这些值,但仍然失败。如果我从插入语句中删除“ID”和“ENABLED”列,插入就会成功。
提前致谢。
最佳答案
PreparedStatement
索引为 1-based (另见setXX javadoc)。因为您使用 0,并且驱动程序不会警告您,所以所有内容都被“转移”,从而导致了问题。
修复:
ps.setString(1, data.getId());
ps.setString(2, data.getName());
ps.setString(3, data.getPassword());
ps.setInt(4, data.isEnabled()? 1:0);
ps.setString(5, data.isRequireReset()?"Y":"N");
关于java - 实体表错误 13037 : Illegal DOUBLE PREC constant,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32141582/
我正在使用 flex 和 bison 实现一个简单的计算器。 我希望以下输入给出 -4 而不是 4: -2^2 为了实现-4,我不得不声明^运算符的优先级高于一元减号运算符的优先级,但这是行不通的。
考虑以下 Bison 语法(这是从我正在研究的一个更大的语法中剥离出来的): %token ident %left '+' %left CALLPREC %% start: add ';' ; exp
我想使用 decimal.Decimal 对转换后的数字字符串进行算术运算。无论转换后的数字字符串有多少小数,我都希望返回有两位小数。 在这种特殊情况下,为什么两位小数精度返回一位小数,为什么三位小数
我想使用 decimal.Decimal 对转换后的数字字符串进行算术运算。无论转换后的数字字符串有多少小数,我都希望返回有两位小数。 在这种特殊情况下,为什么两位小数精度返回一位小数,为什么三位小数
我正在尝试为我在 VS2010 中的代码设置 -prec-sqrt=false。我唯一能看到的地方是在 myfile.cu 的属性页上(CUDA C/C++ => Host => Additional
notype_declarator: notype_declarator '(' parmlist_or_identifiers %prec '.' { $$ = bui
尝试使用 Java JDBC 代码将记录添加到 SolidDB 时,出现以下错误。 下面是抛出异常的方法: public void addData(User data) { Conne
#include #include #include #include #include #include using std::cin; using std::sort; using s
我是使用 C++ 的新手。我有一个快速的问题,可能是一个愚蠢的问题。 streamsize prec = cout.precision(3); 据我正确理解,此声明的工作方式如下:将 cout 精度设
我在尝试使用 getcontext().prec = 2 函数时遇到问题,试图获得只有 2 位小数的小数结果。我已经尝试了几种变体,但不知道为什么我不能在我的一个列表中将 float 转换为字符串。我
如何在不使用 %prec 或 %left 的情况下在 Bison 中设置优先级和关联性?有没有办法在不需要的地方编写语法? 最佳答案 如果不想使用 %prec、%left 和 %right,则必须使用
我正在编写一个处理货币值的程序,因此我希望它使用小数输出到小数点后两位,不幸的是,这不起作用,并且输出的数字更长。 我在网上查了一下,但到目前为止,似乎没有针对这个特定问题的任何答案,以防万一在程序的
我是一名优秀的程序员,十分优秀!