当前位置:首页 » 编程语言 » java数据库更新

java数据库更新

发布时间: 2023-05-28 09:32:51

‘壹’ java实现自动更新数据功能。JAVA或者数据库实现都可。

数据库的话你可以写一个触伍掘腔发器,
java代码的话:spring的schles和腔衫quartz设置定时任散明务

‘贰’ 用java实现对两数据库的数据同步更新,怎么来做

首先得弄清楚 你的插入是对同一数据库 还是不同数据库的操作数据量大的时候 是否要求即时性 是否牵扯到事物
本人推荐 做一个跑批程序 进行同步数据 这样能提高代码性能 以及程序性能 当然 你所说的瓶颈 无非就是大数据量对数据库的操作次数 以及海量数据造成程序效率的一个瓶颈

‘叁’ java 如何并发更新数据库同一条数据

分2分情况:

一.普通的单应用并发,使用关键字synchronized就可以实现。

二.多应用或多台并发,这时在由于2者并非同一应用,使用synchronized并不能满足要求。此时,有下面几种方案:

  1. 数据库行级锁,优点是简单粗暴,缺点是容易死锁,非数据库专业人事建议不使用。

  2. 写入请求分离成一个独立项目,这就回到了第一种情况,优点是实现技术难度低,缺点是高并发性能相对不是很高。

  3. 使用分布式事务管理,这个是目前高并发处理的最优方案了。


最后要说的没有差的方案,每个方案都有其适用环境,请根据自身需求选择对应方案。

‘肆’ java怎么实现数据库有新数据 页面数据就更新

既然是有新数据,说明是两种情况:
1、自己在数据库内填写的,那就脱离了数据库的采集用户信息的作用,无效性比较大,可以采用页面时间亩粗圆间隔刷新的方式来每次获取数据库信息;
2.用户传进数据库的凳森数据,既然是传进来的 那就会发生数据库和页面交互,这样迅塌的话当数据传进数据库的时候在Dao方法中返回一个数据库select*from test(表)传出来的值,页面上request接收一下,不就能时时更新了嘛

‘伍’ java多线程更新数据库批量的数据信息吗怎么实现

//将数据库中的数据册扮条数分段
public void division(){
//获取要导入的总的数据条数
String sql3="SELECT count(*) FROM [CMD].[dbo].[my1]";
try {
pss=cons.prepareStatement(sql3);
rss=pss.executeQuery();

while(rss.next()){
System.out.println("总记录条数:"+rss.getInt(1));
sum=rss.getInt(1);
}
//每30000条记录作为一个分毁纤割点
if(sum>=30000){
n=sum/30000;
resie=sum%30000;
}else{
resie=sum;
}

System.out.println(n+" "+resie);

} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

}
线程类
public MyThread(int start,int end) {
this.end=end;
this.start=start;
System.out.println("处理掉余数");
try {

System.out.println("--------"+Thread.currentThread().getName()+"------------");
Class.forName(SQLSERVERDRIVER);
System.out.println("加纤姿仿载sqlserver驱动...");
cons = DriverManager.getConnection(CONTENTS,UNS,UPS);
stas = cons.createStatement();
System.out.println("连接SQLServer数据库成功!!");

System.out.println("加载mysql驱动.....");
Class.forName(MYSQLDRIVER);
con = DriverManager.getConnection(CONTENT,UN,UP);
sta = con.createStatement();
// 关闭事务自动提交
con.setAutoCommit(false);
System.out.println("连接mysql数据库成功!!");

} catch (Exception e) {
e.printStackTrace();
}
// TODO Auto-generated constructor stub
}

public ArrayList<Member> getAll(){
Member member;
String sql1="select * from (select row_number() over (order by pmcode) as rowNum,*" +
" from [CMD].[dbo].[my1]) as t where rowNum between "+start+" and "+end;
try {
System.out.println("正在获取数据...");
allmembers=new ArrayList();
rss=stas.executeQuery(sql1);
while(rss.next()){
member=new Member();
member.setAddress1(rss.getString("address1"));
member.setBnpoints(rss.getString("bnpoints"));
member.setDbno(rss.getString("dbno"));
member.setExpiry(rss.getString("expiry"));
member.setHispoints(rss.getString("hispoints"));
member.setKypoints(rss.getString("kypoints"));
member.setLevels(rss.getString("levels"));
member.setNames(rss.getString("names"));
member.setPmcode(rss.getString("pmcode"));
member.setRemark(rss.getString("remark"));
member.setSex(rss.getString("sex"));
member.setTelephone(rss.getString("telephone"));
member.setWxno(rss.getString("wxno"));
member.setPmdate(rss.getString("pmdate"));
allmembers.add(member);
// System.out.println(member.getNames());
}
System.out.println("成功获取sqlserver数据库数据!");
return allmembers;

} catch (SQLException e) {
// TODO Auto-generated catch block
System.out.println("获取sqlserver数据库数据发送异常!");
e.printStackTrace();
}
try {
rss.close();
stas.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}

public void inputAll(ArrayList<Member> allmembers){
System.out.println("开始向mysql中写入");
String sql2="insert into test.my2 values (?,?,?,?,?,?,?,?,?,?,?,?,?,?)";
try {
ps=con.prepareStatement(sql2);
System.out.println("-------------------------等待写入数据条数: "+allmembers.size());
for(int i=0;i<allmembers.size();i++){
ps.setString(1, allmembers.get(i).getPmcode());
ps.setString(2, allmembers.get(i).getNames());
//System.out.println(allmembers.get(i).getNames());
ps.setString(3, allmembers.get(i).getSex());
ps.setString(4, allmembers.get(i).getTelephone());
ps.setString(5, allmembers.get(i).getAddress1());
ps.setString(6, allmembers.get(i).getPmdate());
ps.setString(7, allmembers.get(i).getExpiry());
ps.setString(8, allmembers.get(i).getLevels());
ps.setString(9, allmembers.get(i).getDbno());
ps.setString(10, allmembers.get(i).getHispoints());
ps.setString(11, allmembers.get(i).getBnpoints());
ps.setString(12, allmembers.get(i).getKypoints());
ps.setString(13, allmembers.get(i).getWxno());
ps.setString(14, allmembers.get(i).getRemark());
//插入命令列表
//ps.addBatch();
ps.executeUpdate();
}
//ps.executeBatch();
con.commit();

ps.close();
con.close();
this.flag=false;
System.out.println(Thread.currentThread().getName()+"--->OK");
} catch (SQLException e) {
// TODO Auto-generated catch block
System.out.println("向mysql中更新数据时发生异常!");
e.printStackTrace();
}
}
@Override
public void run() {
// TODO Auto-generated method stub
while(true&&flag){
this.inputAll(getAll());
}
}

‘陆’ ,java中数据库记录集更新用什么语句

分类裂核纳: 电脑/网络 >> 程序设计 >> 其他氏扒编程语言
解析:

与具体的数据库有关,但是基本上都支持SQL92标准.每个数据库都有自己的一些处理的语句.

对于mysql用:UPDATE [database.]tableName SET [字段操作列表如:age=age+1] [where 语句如:where age>0];

如果没有where语句,update将会更新肆没所有该表中的age字段.

‘柒’ java实现数据库定时更新

才1500条记录,怎么弄也花不了很长时间,也不会占很大资源。
因为是两个不同的数据库所以用纯SQL是做不了的。只有读到服务器中做比较然后更新。
这样的操作最好不要用框架,自己写也不是很难的,表2你只要读一次然后循环发update到表1里去,表1的数据库连接你创建一个就好了,你把它缓存了,在循环里不停的反复用(只用一个就行了不用写连接池,因为不涉及多线程,--千万不要发一条update建一个connection 然后关闭)整个过程大概不到一分中就完成(环境不一样会有一点出入)
任何疑问
blog.csdn.net/shmilyhe

mail:[email protected]

‘捌’ java更新数据库的datatime字段

可以尝试以下代码:
java.util.Date dt = new java.util.Date();

java.text.SimpleDateFormat sdf =
new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

String currentTime = sdf.format(dt);

然后把currentTime 插入数迟卖据库的datetime字段就可以兆伏了,取的码猜逗时候也一样,取出来的

‘玖’ java 修改数据库时数据无法更新

如帆薯桥楼上所讲:
执行ps.executeUpdate();之后并不会自动态猛进行事务的手乱提交。
需要在之后添加执行
con.commit();
你执行下试一下吧

热点内容
bat脚本字符串 发布:2025-07-10 21:19:49 浏览:171
像素工厂手机服务器地址 发布:2025-07-10 21:18:12 浏览:749
怎么查看服务器ip跟密码是多少 发布:2025-07-10 21:12:29 浏览:21
sqlserver读写分离 发布:2025-07-10 21:12:27 浏览:375
油猴安装脚本 发布:2025-07-10 21:01:30 浏览:583
json跨域访问 发布:2025-07-10 20:51:37 浏览:870
架设测试服务器怎么做 发布:2025-07-10 20:47:32 浏览:412
lol服务器满载怎么办 发布:2025-07-10 20:31:08 浏览:328
sql2005脚本导出数据 发布:2025-07-10 20:31:05 浏览:112
三星手机服务器停止运行怎么办 发布:2025-07-10 20:21:07 浏览:868