javascript - 如何将 MySQL 查询的 ResultSet 转换为整数?

标签 javascript

我不太精通 Java 和 JavaScript。

我正在做的是使用一个java插件,它允许我将javaScript添加到文本文件中,以便在某些事件上调用。文本文件中的 JS 还可以调用 Java 插件本身内部的内容,使其能够访问我没有相关文档的 API。

我需要用 JS 做的是查询 MySQL 数据库并从表中获取用户 ID。这是我的代码:

var host = "localhost"
var port = "3306"
var database = "dev"
var user = "root"
var pass = ""
// var username = name of the user used to vote. Part of internal API

function connect(){
  var url = "jdbc:mysql://" + host + ":" + port + "/" + database
  return java.sql.DriverManager.getConnection(url, user, pass)
}
function getUserId(){
  var connection = connect()
  var statement = connection.createStatement()
  var userId = statement.executeQuery("SELECT user_id FROM xf_user_field_value WHERE field_value = '" + username + "'")
  return userId
}

返回的是一个结果集。我需要它返回的是字段的整数值..而不是结果集。

如何从 JavaScript 中的 ResultSet 获取整数值?

最佳答案

我不熟悉这个 Java/Javascript 插件,但它似乎遵循标准的 Java 方法。应该是:

var statement = connection.createStatement()
statement.executeQuery("SELECT user_id FROM xf_user_field_value WHERE field_value = '" + username + "'")
var rs = s.getResultSet ();

if (rs.next()) {
    var userId = rs.getInt("user_id");
}

编辑

在你的情况下,它似乎已经返回了一个ResultSet,所以也许:

var rs = statement.executeQuery("SELECT user_id FROM xf_user_field_value WHERE field_value = '" + username + "'")

关于javascript - 如何将 MySQL 查询的 ResultSet 转换为整数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12324801/

相关文章:

javascript - 为什么这不是按照我期望的方式添加类(class)?

javascript - 在Js中的forEach中赋值

javascript - 触发或模拟哈希点击

javascript - 使用 Jest 的待办事项功能

JavaScript Fetch() 主体未正确发布

javascript - 调用作为函数的变量而不向其传递参数

javascript - 扩展深层嵌套 prop 中的属性 ImmutableJS

javascript - Convert JS function to jQuery - (输入字段清除默认值)

javascript - 初始化后更改图表的 Kendo 选项

javascript - 显示与谷歌浏览器中键入的不同的键盘字符