jsp更新sql数据库

jsp更新sql数据库,第1张

jsp更新sql数据库

import java.sql.*

class DBBean {

public String loginName = null

public String userName = null

public String password = null

public int age= 0

public String address = null

public String getAddress() {

return address

}

public void setAddress(String address) {

this.address = address

}

public int getAge() {

return age

}

public void setAge(int age) {

this.age = age

}

public String getLoginName() {

return loginName

}

public void setLoginName(String loginName) {

this.loginName = loginName

}

public String getPassword() {

return password

}

public void setPassword(String password) {

this.password = password

}

public String getUserName() {

return userName

}

public void setUserName(String userName) {

this.userName = userName

}

}

/*

*

* userinfo 数据库结构

* loginName varchar

* userName varchar

* password varchar

* age number

* address varchar

*/

public class Test {

private PreparedStatement pst = null//对pst的初始化工作请自己执行

public void update(DBBean bean){

try {

String sql="update userinfo set loginName=? , userName=? , password=? , age=? , address=?"

pst.setString(1,bean.getLoginName())

pst.setString(2,bean.getUserName())

pst.setString(3,bean.getPassword())

pst.setInt(4,bean.getAge())

pst.setString(5,bean.getAddress())

pst.executeUpdate(sql)

} catch (SQLException e) {

// TODO 自动生成 catch 块

e.printStackTrace()

}

}

}

没理解你说的 session 跟 数据库 跟 jsp页面的关系,

我说的,我理解的问题, 数据库的内容有变化,但是jsp页面上的数据没有变化

首先 jsp页面上的数据是怎么来的,是直接查询数据库,获取想要的数据,然后渲染jsp页面,还是通过ajax. 一个页面渲染完成之后,它是不知道 数据库的内容有变化的,如果对页面没什么体验要求的化,你重新刷新一遍页面,这个时候,相当于重新查询一次数据库,这个时候,就可以获取变化了的数据,然后渲染成页面。如果对体验要求高的话,不能靠重新刷新页面去获取新的数据的话,可以用轮询或者websocker之内的技术,来实现

1.medication_ID不存在

执行

String sql1 = "insert into his_medication_trad(medication_ID,name,amount,price,area,in_date) values ('" + mid + "','"+ mname + "','"+ mamount1 +"','"+ mprice +"','"+ marea +"','"+ mdate +"')"

String sql3 = "insert into his_medication_stock(medication_ID,name,stock,price,area) values ('" + mid + "','"+ mname + "','"+ mamount1 +"','"+ mprice +"','"+ marea +"')"

2.medication_ID存在

String sql2 = "update his_medication_stock set stock='" + mamount + "' where medication_ID='" + mid + "'"

<%

Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver")

String url = "jdbc:sqlserver://localhost:1433DatabaseName=HIS"

String user = "sa"

String password = "123"

Connection conn = DriverManager.getConnection(url, user, password)

Statement stmt = conn .createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE)

String mid = request.getParameter("id")

String mname = request.getParameter("name")

String mamount1= request.getParameter("amount")

String mprice= request.getParameter("price")

String marea= request.getParameter("area")

String sql="select * from his_medication_stock where medication_ID='"+mid+"'"

ResultSet rs=stmt.executeQuery(sql)

String s1="-1"

String s2="-1"

while(rs.next())

{

s1=rs.getString(1)//获得第一列数据

s2=rs.getString(4)//获得第四列数据

}

int mstock=Integer.parseInt(s2)

int mamount2=Integer.parseInt(mamount1)

int i=mamount2+mstock

String mamount=String.valueOf(i)

java.util.Date currentTime = new java.util.Date()//得到当前系统时间

String date2 = currentTime.toString()//将Date型日期时间转换成字符串形式

String mdate=date2

String sql1 = "insert into his_medication_trad(medication_ID,name,amount,price,area,in_date) values ('" + mid + "','"+ mname + "','"+ mamount1 +"','"+ mprice +"','"+ marea +"','"+ mdate +"')"

String sql2 = "update his_medication_stock set stock='" + mamount + "' where medication_ID='" + mid + "'"

String sql3 = "insert into his_medication_stock(medication_ID,name,stock,price,area) values ('" + mid + "','"+ mname + "','"+ mamount1 +"','"+ mprice +"','"+ marea +"')"

stmt.executeUpdate(sql1)

if(s1.equals("-1")) //不存在,插入两条

{

stmt.executeUpdate(sql1)

stmt.executeUpdate(sql3)

}

else //存在,修改一条

{

stmt.executeUpdate(sql2)

}

stmt.close()

conn.close()

%>

上面上楼主的意思吧??

我已经给楼主写好了..

如果楼主你的SQL语句没有写错的话..那么上面的运行结果就是正确的...

如果在使用的过程中遇到问题的话...

而且我又在线....那么就直接百度HI我就行了...

我来给你解决一下吧!!!

祝楼主早日成功哈!!!


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6621575.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-25
下一篇 2023-03-25

发表评论

登录后才能评论

评论列表(0条)

保存