Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何从用户输入向表中插入值_Java_Sql_Postgresql_Jdbc - Fatal编程技术网

Java 如何从用户输入向表中插入值

Java 如何从用户输入向表中插入值,java,sql,postgresql,jdbc,Java,Sql,Postgresql,Jdbc,我已经在PostgreSQL中创建了一个数据库,并成功地在它们之间创建了一个连接,还从Java源代码创建了表 我的问题是如何将来自用户输入的值插入到这些表中。 我已经在谷歌搜索了足够多的内容,但还没有找到能够真正解释我需要做什么的东西。在你处理用户输入的方法中,你可以执行插入或更新查询。下面是一个修改后的示例: 这假设您有一个包含三列的表“user\u into\u table” try(PreparedStatement pstmt=con.prepareStatement(“插入员工值(?

我已经在PostgreSQL中创建了一个数据库,并成功地在它们之间创建了一个连接,还从Java源代码创建了表

我的问题是如何将来自用户输入的值插入到这些表中。
我已经在谷歌搜索了足够多的内容,但还没有找到能够真正解释我需要做什么的东西。

在你处理用户输入的方法中,你可以执行插入或更新查询。下面是一个修改后的示例:

这假设您有一个包含三列的表“user\u into\u table”

try(PreparedStatement pstmt=con.prepareStatement(“插入员工值(?)”){

pstmt.setBigDecimal(1,inputFromUser)您能提供更多信息,例如您正在使用的库和一些代码片段吗?我使用standar JDK库以及postgresql-9.3-1102.jdbc3.jar文件来建立连接。为了向新手展示如何以正确的方式做事,您确实应该使用
PreparedStatement
and一个参数化查询。(没有否决票…这次…只是一句责骂。)
Statement st = conn.createStatement();
String query_st = "INSERT INTO user_info_table VALUES ('"+user_id+"', '"+age+"', "+height+");";
ResultSet rs = st.executeQuery(query_st);
while (rs.next())
{
   System.out.print("Column 1 returned ");
   System.out.println(rs.getString(1));
} rs.close();
st.close(); 
   try (PreparedStatement pstmt = con.prepareStatement("INSERT INTO employees VALUES (?,?)")) {

     pstmt.setBigDecimal(1, inputFromUser) <---- injection safe
     pstmt.setInt(2, inputFromUser) <---- injection safe
     ...
   } // Auto close.