本想通过sql语句实现发现不行,参考语句如下:
update mo_indexes a,mo_paf_indexmid_indexname b set a.index_name='2'  where a.index_id=b.index_id and b.index_id in(106749314,106749317);

update mo_indexes set mo_indexes.index_name = (select mo_paf_indexmid_indexname.index_name from mo_paf_indexmid_indexname where mo_paf_indexmid_indexname.index_id = mo_indexes.index_id and mo_indexes.index_id in(106749314,106749317));

update mo_indexes a,mo_paf_indexmid_indexname b set a.index_name=b.index_name  where a.index_id=b.index_id and b.index_id in (106749314,106749317);

update mo_indexes set mo_indexes.index_name = (select mo_paf_indexmid_indexname.index_name from mo_paf_indexmid_indexname where mo_paf_indexmid_indexname.index_id = mo_indexes.index_id and mo_indexes.index_id in(106749314,106749317));

package Test;

public class TestUpdateOneTableToAnother {

static String mysqlUrl="jdbc:mysql://30.16.9.32:3306/mario?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull";
static String mysqlUser="mario";
static String mysqlPassword="Paic!@#123";
static String mysqlDriverName="com.mysql.jdbc.Driver";

//static String mysqlUrl="jdbc:mysql://10.20.20.176:3306/mario?useUnicode=true&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull";
//static String mysqlUser="mario";
//static String mysqlPassword="mario";
//static String mysqlDriverName="com.mysql.jdbc.Driver";

public static void main(String[] args){

List<Map<String, Object>>  mo_paf_indexmid_indexnameList = null;
String selectSql="select index_id,index_name from mo_paf_indexmid_indexname";
//String selectSql="select index_id,index_name from mo_indexes limit 2";
mo_paf_indexmid_indexnameList = QueryDBHelperList(mysqlUrl,mysqlDriverName,mysqlUser,mysqlPassword,selectSql);

for(int i=0;i<mo_paf_indexmid_indexnameList.size();i++){
String index_name = mo_paf_indexmid_indexnameList.get(i).get("index_name").toString();
int index_id = Integer.parseInt(mo_paf_indexmid_indexnameList.get(i).get("index_id").toString());
//String TempSql="update mo_indexes set index_name = '%s' where hash_key like 'PAF_%' and index_id = %d";
String TempSql="update mo_indexes set index_name = '"+index_name+"' where hash_key like 'PAF_%' and index_id = "+String.valueOf(index_id);
System.out.println("index_name:"+index_name);
System.out.println("index_id:"+index_id);
//String updateSql=String.format(TempSql,index_name,index_id);
String updateSql=TempSql;
System.out.println("updateSql:"+updateSql);
int count = UpdateDBHelperCount(mysqlUrl,mysqlDriverName,mysqlUser,mysqlPassword,updateSql);
System.out.println("已经更新了--------:"+count);
System.out.println("------------------------");

}  
}
/**
* 操作mysql 返回 IndexJsonBean的list
*/
    public static List<Map<String, Object>> QueryDBHelperList(String url,String driverName,String user,String password,String mysql) {  
   
    Connection conn = null;  
   PreparedStatement pst = null; 
   ResultSet ret = null;
        // 构造泛型结果集
        List<Map<String, Object>> datas = new ArrayList<Map<String, Object>>();
        
     try {  
            Class.forName(driverName);//指定连接类型  
            
            conn = DriverManager.getConnection(url, user, password);//获取连接  
            pst = conn.prepareStatement(mysql);//准备执行语句  
            
            ret = pst.executeQuery();//执行语句,得到结果集  
            
            ResultSetMetaData rsmd = pst.getMetaData();

// 取得结果集列数
            int columnCount = rsmd.getColumnCount();

Map<String, Object> data = null;

// 循环结果集
            while (ret.next()) {
                data = new HashMap<String, Object>();
                // 每循环一条将列名和列值存入Map
                for (int i = 1; i <= columnCount; i++) {
                    data.put(rsmd.getColumnLabel(i), ret.getObject(rsmd.getColumnLabel(i)));
                }
                // 将整条数据的Map存入到List中
                datas.add(data);
            }       
        } catch (Exception e) {  
System.out.println("QueryDBHelperList error:");
            //e.printStackTrace();  
        } finally{
        try {  
                conn.close();  
                pst.close();  
            } catch (SQLException e) { 
            System.out.println("QueryDBHelperList error:");
                //e.printStackTrace();  
            }  
        }
        return datas;   
}
    
    
/**
* 操作mysql 返回 IndexJsonBean的list
*/
    public static int UpdateDBHelperCount(String url,String driverName,String user,String password,String mysql) {  
   
    Connection conn = null;  
   PreparedStatement pst = null; 
   int ret = 0;
        
     try {  
            Class.forName(driverName);//指定连接类型  
            
            conn = DriverManager.getConnection(url, user, password);//获取连接  
            pst = conn.prepareStatement(mysql);//准备执行语句  
            
            ret = pst.executeUpdate(mysql);//执行语句,得到结果集  
                  
        } catch (Exception e) {  
System.out.println("UpdateDBHelperCount error:");
            //e.printStackTrace();  
        } finally{
        try {  
                conn.close();  
                pst.close();  
            } catch (SQLException e) { 
            System.out.println("UpdateDBHelperCount error:");
                //e.printStackTrace();  
            }  
        }
        return ret;   
}
}

通过java程序实现mysql 批量一个表的子段更新另一个表的字段相关推荐

  1. oracle 中某张表备份,张表系统流程(java程序备份及恢复SQL2000中数据库中的某张表)...

    java程序备份及恢复SQL2000中数据库中的某张表 你可以现在数据库里面建立一张视图,视图里面的SQL语句就是查询该数据库中的表明,这就是访问系统表的内容,只提供单独一个列,然后展示给客户,当客户 ...

  2. Java 程序读取Mysql数据库时间信息与真实时间相差 13、14 小时、SQLException: HOUR_OF_DAY: 2 -> 3

    CST时区引起的异常: Java 程序读取Mysql数据库时间信息,与真实时间相差 13.14 小时 java.sql.SQLException: HOUR_OF_DAY: 2 -> 3 原因: ...

  3. Java程序向MySql数据库中插入的中文数据变成了问号

    找到mysql的安装目录,修改my.ini文件 (1)如何找到my.ini文件 如果my.ini文件不在MySQL的安装目录下,可能放在隐藏目录,要先去找到ProgramData,(这里要先打开显示隐 ...

  4. Java程序访问Mysql Cluster

    2019独角兽企业重金招聘Python工程师标准>>> 在192.168.56.10或者192.168.56.20任意一台机器上,访问数据库,命令为: 1 /bin/mysql 比如 ...

  5. java程序向mysql插入中文变问号

    2019独角兽企业重金招聘Python工程师标准>>> 我碰到的问题是使用客户端工具插入中文是没问题的,但是用java程序就变成问号了. 遇到这种问题肯定是字符集造成的,先检查数据库 ...

  6. 第一个java程序释义_Java 学习之路(1)第一个Java程序

    Hello World程序 在编程语言的世界里,第一个编程语言估计就是输出Hello World了吧. /** * 编写第一个Java程序,输出Hello World! * @author LJS * ...

  7. java程序员必学_Java入门基础学习,成为一个Java程序员的必备知识

    引言 众所周知,Java是一种面向对象的编程语言.您可以在Windows操作系统上编写Java源代码,而在Linux操作系统上运行编译后的字节码,而无需修改源代码. 数据类型 Java 有 2 种数据 ...

  8. mysql多表查询插入更新_Mysql多表查询,多表插入和多表更新

    /*************************************by garcon1986************************************************* ...

  9. mysql批量查询并替换或者更新某个字段

    实例描述:批量替换数据 使用范围:mysql数据库 批量按照条件覆盖单字段的值 update 表名 set 字段="这里写内容" where 字段=值; 批量按照字段,替换字段内的 ...

最新文章

  1. 在一个3*4数组中查找最大最小值
  2. 【计算机网络】网络基础
  3. 有关DataVisualization类组件的研究——Silverlight学习笔记[43]
  4. [outlook]打开以后就自动进入安全模式的解决方法。Outlook start in safe mode.
  5. 用WinZip Pro创建Zip文件
  6. 【转】斐波那契数列算法分析
  7. 零基础,新手小白看过来!易用可视化工具推荐
  8. 易接SDK ios9以上无法弹出充值界面的一种情况
  9. 用二维码分享WiFi密码(转)
  10. linux怎么看本机ip,linux下查看本机IP的两种方法
  11. 公网Wiki站点搭建全流程攻略·小白向(含Parsoid和VisualEditor)
  12. GRUB4DOS(九)常用设备类型及map命令用法示例
  13. js image对象
  14. MySQL 数据库语句基础
  15. vue3中导出excel表格
  16. 技术风向标 | 云原生技术架构成熟度模型解读
  17. vue项目访问的时候,用localhost能访问,但是用本机ip就不能访问 的解决办法,亲测有效
  18. Lua--棋牌游戏开发(概念性设计一)
  19. 基金认购与申购的区别
  20. 是什么让沃尔玛发现了尿布和啤酒之间的关系呢?

热门文章

  1. JavaScript设计模式第一弹-创建型设计模式
  2. linux第五周微职位
  3. PostgreSQL 获取拼音首字母的函数 - 摘自互联网
  4. [Android自定义控件] Android Scroller工具类和GestureDetector的简单用法
  5. 不能从const char *转换为LPCWSTR --VS经常碰到
  6. RHEL6.2上使用 libvirt创建和管理KVM虚拟机
  7. REDHAT5.6dhcp服务器及dhcp中继代理配置
  8. 获取当前组策略配置的信息
  9. 索尼推出 PlayStation 漏洞奖励计划,最严重漏洞5万美元起步
  10. JavaScript总结摘要