gpt4 book ai didi

java - 您如何将 Java 字符输入 MYSQL 数据库,然后再检索它们?

转载 作者:太空宇宙 更新时间:2023-11-03 10:27:27 26 4
gpt4 key购买 nike

我正在使用 MYSQL 数据库为 Java 应用程序存储持久数据。

CREATE TABLE testtable1( key1a CHAR, key1b CHAR, encoded1a CHAR, encoded1b CHAR);

如您所见,我创建了一个表,为每一行存储 4 个不同的 CHAR。

我为将字符输入表而编写的 sql 是

 char k1[] = new char[2]
char p[] = new char[2];

k1[0]=0x00aa;
k1[1]=(char)0xaaaa;

p[0]=0x0001;
p[1]=0x0002;

sql = "INSERT INTO testtable1 "
+"(key1a, key1b , encoded1a,encoded1b) "
+ "VALUES "
+ "('"+ k1[0] + "',"
+ "'"+ k1[1] + "',"
+ "'"+ p[0] + "',"
+ "'"+ p[1] + "')";

我认为上面的说法行不通。它输入数据 alt text

然后像这样进入数据库 alt text

如您所见,它输入了一个?(这是什么?),然后最后两列没有被填充。

那么你们中的任何人都可以指出我在存储 char 变量时的想法错误的正确方向吗?

另外,我如何从数据库表中检索字符?因为我找不到关于此的任何文档???

非常感谢

最佳答案

我建议查看 PreparedStatement .

一个例子如下:

PreparedStatement ps = nulll;
try {
ps = connection.prepareStatement("INSERT INTO testtable1 (key1a, key1b , encoded1a,encoded1b) VALUES (? ,? ,?, ?)");
for (int i = 1; i <= k.length; i++) {
ps.setString(i, "" + k[i]);
}

ps.executeUpdate();
} catch (SQLException) {
//Log exception
} finally {
if (ps != null) {
try {
ps.close();
ps = null;
} catch (SQLException e) {}
}
}

这里的问题是,如果char[]k的长度大于4,就会抛出异常。

关于java - 您如何将 Java 字符输入 MYSQL 数据库,然后再检索它们?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4346830/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com