java - JSP、HTML 和 SQL Server 连接问题

标签 java html mysql jsp

我的编程作业(JSP 项目)遇到问题。

我有 2 个文本字段/输入和一个按钮。单击该按钮时,我想向我的 SQL 数据库发送一个查询,该数据库将输入中输入的值插入到我的查询中,但我不知道如何连接它。

这是一些代码:

<table>
            <tr>
                <td>Employee name:</td><td><input id="emp_name" required="" type="text"></td>
            </tr>
            <tr>
                <td>Employee phone:</td><td><input id="phone" required="" type="text"></td>
            </tr>
            <tr>
            <button onclick="sqlQuery()">Add new employee</button>                
            </tr>
        </table>
        <script>
            function sqlQuery {
            <%
                sql = "INSERT INTO `employees` (`employee_name`,`phone`) VALUES ('" + document.getElementById("emp_name") + "','" + document.getElementByID("phone") + ")";
                try {
                s = con.createStatement();
                rs = s.executeQuery(sql);
            }
        </script>

所以基本上,当单击按钮时,我想发送带有 2 个输入值的查询,以在本例中创建一个新员工(我还想在接下来的练习中更新和删除)。

最佳答案

也许你可以试试这个。运行表单操作而不是 onclick。以下是向sql插入和更新记录的示例,希望对您有所帮助:)

A.jsp

    <html>
    <head></head>
    <body>
    <FORM  ACTION="B.JSP" METHOD="POST"> //edited part
            Please enter your name:
            <INPUT TYPE="TEXT" NAME="text1">
            <BR>
            <INPUT TYPE="TEXT" NAME="text2">
            <BR>
            <INPUT TYPE="SUBMIT" value="Submit">
        </FORM>

    </body>
    </html>

B.jsp

    <jsp:useBean id="record" scope="page" class="com.home.home.record" />

    String FIRSTNAME = request.getParameter("text1");
    String LASTNAME  = request.getParameter("text2");
    int iRowAffected = 0;

    iRowAffected = record.insert_data(FIRSTNAME, LASTNAME);
    if(iRowAffected == 0) 
    {
           throw new NullPointerException("insert_data");
    }

记录.java

public int insert_data(String FIRSTNAME, String LASTNAME) throws Exception  
{

   String myQuery = "SELECT * FROM TB_RECORD WHERE FIRSTNAME='"+FIRSTNAME+"' AND LASTNAME='"+LASTNAME+"'";
   stmt = myConn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);
   ResultSet resultSet = stmt.executeQuery(myQuery);

    if(resultSet.next())
    {       
           //UPDATE PART
    }else{
            String myQuery = "INSERT INTO TB_RECORD (FIRSTNAME,LASTNAME) VALUES (?,?)";
            pstmt = new PreparedStatementLogable(myConn,myQuery);
            pstmt.setString(1, FIRSTNAME);
            pstmt.setString(2, LASTNAME);
            RowsAffected = pstmt.executeUpdate();
            insertSQLLog("SQL",pstmt.toString(),"","","","");
            pstmt.close();
    }
    return RowsAffected;
}

关于java - JSP、HTML 和 SQL Server 连接问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29763817/

相关文章:

java - 使用 insertTab() 插入选项卡时 JTabbedPane.getComponentAt() 似乎返回错误的组件

html - 内嵌高度修复的标签和复选框

javascript - 用javascript增加类

MySQL:是否有可能 "INSERT if number of rows with a specific value is less than X"?

mysql - 在 MediaWiki 中将 session 存储从文件更改为 MySQL

java - 删除未保存的对象不会引发异常

java - 比较java中表示数字的字符串值

css - 使用 HTML5/CSS 向图像添加文本

php - 通过搜索关键字查找用户并返回结果与共同 friend 的订单

java - @jsonbackreference 不绑定(bind)关系