[英]How do I translate a MySQL query's ResultSet into an integer?
I am not fluent in Java, and JavaScript. 我不太懂Java和JavaScript。
What I am doing is working with a java plugin that allows me to add javaScript into a text file to be called upon on certain events. 我正在做的是使用Java插件,该插件允许我将javaScript添加到文本文件中,以在某些事件上调用。 The JS in the text file can also call upon things inside of the Java Plugin itself giving it access to an API that I don't have documentation for. 文本文件中的JS也可以调用Java插件本身内部的内容,从而可以访问我没有文档说明的API。
What I need to do with my JS is query a MySQL database and get the User Id from a table. 我需要对JS执行的操作是查询MySQL数据库并从表中获取用户ID。 Here is my code: 这是我的代码:
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
}
What this returns is a resultSet. 这返回的是一个resultSet。 I need it to return is the integer value of the field.. not the result set. 我需要它返回的是字段的整数值..而不是结果集。
How do I get an integer value from a ResultSet in JavaScript? 如何从JavaScript中的ResultSet获取整数值?
I am not familiar with this Java/Javascript plugin but it seems to follow the standard Java approach. 我不熟悉此Java / Javascript插件,但它似乎遵循标准的Java方法。 It should be: 它应该是:
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");
}
EDIT 编辑
In your case it seems to return a ResultSet
already, so maybe: 在您的情况下,似乎已经返回了ResultSet
,所以也许:
var rs = statement.executeQuery("SELECT user_id FROM xf_user_field_value WHERE field_value = '" + username + "'")
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.