我正在尝试使用vert将BLob插入Oracle数据库。x、 我拿到上传文件了
for (FileUpload f : routingContext.fileUploads()){
System.out.println("file name " + f.fileName());
System.out.println("size name " + f.size());
System.out.println("Uploaded File " + f.uploadedFileName());
}
我已使用以下方法将文件上载转换为字节数组:
Buffer fileUploaded = routingContext.vertx().fileSystem().readFileBlocking(f.uploadedFileName());
byte[] fileUploadedBytes = fileUploaded.getBytes();
现在我想直接将其插入Oracle数据库,我尝试使用updateWithParams
,但我不知道如何将Blob添加到查询参数中。谢谢你的帮助
这是我解决问题的实现,现在我可以将文件Blob插入到Oracle数据库中,我希望这将对将来的人有所帮助。
ByteArrayInputStream finalBis = bis;
byte[] finalFileUploadedBytes = fileUploadedBytes;
DB.getConnection(connection -> {
if (connection.succeeded()) {
CallableStatement stmt = null;
try {
stmt = connection.result().getConnection().prepareCall(SQL.INSERT_DOCS_QUERY);
stmt.setBinaryStream(1, finalBis, finalFileUploadedBytes.length);
stmt.setString(2,desiDoc);
stmt.setString(3,sourDoc);
logger.debug(stmt);
stmt.execute();
finalBis.close();
} catch (SQLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
} else {
System.out.println("nooot ok");
}
});
问题内容: 我有一个机器人脚本,该脚本可以从sql文件中插入一些sql语句;其中一些语句包含utf8字符。如果我使用navicat工具将此文件手动插入数据库,一切都很好。但是,当我尝试使用机器人框架的数据库库执行此文件时,utf8字符会发疯! 这是我的utf8包含的sql语句: 这是我使用数据库库的方式: 这是我在数据库中得到的: 我尝试直接使用执行SQL文件,但仍然失败!原始库中似乎有问题。这是
问题内容: 我需要将XML文件内容写入oracle数据库,其中该列是CLOB数据类型。我该怎么做? 问题答案: 过时的 请参阅下面的Lukas Eder的答案。 大约有100行代码;-) 这是一个示例 。 要点:与其他JDBC驱动程序不同,Oracle的驱动程序不支持使用和作为参数。相反,您必须先将该列然后 写入 我建议您将此代码移到辅助方法/类中。否则,它将污染其余的代码。
问题内容: 我有一些每月的天气数据,我想插入到Oracle数据库表中,但是我想成批插入相应的记录,以提高效率。谁能建议我如何用Python做到这一点? 例如,假设我的表有四个字段:工作站ID,日期和两个值字段。记录由工作站ID和日期字段(复合键)唯一标识。我将为每个站点插入的值将保存在一个列表中,其中包含X整整年的数据值,因此,例如,如果有两年的值,则值列表将包含24个值。 如果我想一次插入一条记
我想我在这段代码中遇到了一点问题:当我试图在数据库中插入值时,我遇到了一个错误。
问题内容: 从Python脚本向MySQL插入一些数据时,出现一个奇怪的错误。这基本上与我要插入的变量为空有关。我认为MySQL不喜欢空白变量,但是还有其他我可以将其更改为可以与我的insert语句一起使用的东西吗? 我可以成功地使用一条语句将其设置为0(如果为空),但这可能会弄乱我计划稍后在MySQL中进行的某些数据分析。有没有办法将其转换为或某种方式,以便MySQL接受但不添加任何内容? 问题
我的准备好的语句有问题,但我无法找出错误所在。我正在尝试将URI链接插入数据库。 错误