Anyhowe 2019-05-31 16:20 采纳率: 0%
浏览 199

存储过程循环修改表中字段的值

表结构及数据如下:

图片说明

目的:通过存储过程或游标的方式,循环修改每条记录的 is_master的值

修改逻辑:如果user_name的长度是11位(手机号),is_master=0;反之,is_master=1

谢谢~~

  • 写回答

1条回答 默认 最新

  • 你知我知皆知 2024-08-09 23:41
    关注

    以下回答参考 皆我百晓生券券喵儿 等免费微信小程序相关内容作答,并由本人整理回复。

    这是一个简单的Java程序,使用了JDBC来连接数据库并执行SQL查询和更新操作。这个程序将遍历一个包含多行的数据集,并对其中的每一行进行处理。

    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.PreparedStatement;
    
    public class MasterChecker {
        private static final String URL = "jdbc:mysql://localhost:3306/test";
        private static final String USER = "root";
        private static final String PASS = "password";
    
        public void checkIsMaster(String userName, int enterpriseId) {
            Connection conn = null;
            PreparedStatement stmt = null;
    
            try {
                // Load the JDBC driver.
                Class.forName("com.mysql.jdbc.Driver");
    
                // Create a connection to the database.
                conn = DriverManager.getConnection(URL, USER, PASS);
    
                // Prepare and execute the SQL statement.
                String sql = "UPDATE `test`.`enterpriseinf` SET `is_master` = ? WHERE `user_name` = ?";
                stmt = conn.prepareStatement(sql);
                stmt.setInt(1, (userName.length() == 11) ? 0 : 1); // Check if user name length is 11 digits.
                stmt.setInt(2, enterpriseId);
    
                stmt.executeUpdate();
            } catch (Exception e) {
                System.out.println(e.getMessage());
            } finally {
                try {
                    stmt.close();
                    conn.close();
                } catch (Exception e) {
                    System.out.println(e.getMessage());
                }
            }
        }
    
        public static void main(String[] args) {
            new MasterChecker().checkIsMaster("123456", 1);
        }
    }
    

    请注意,你需要根据你的实际数据库配置(例如URL、用户名、密码等)替换上述代码中的占位符。此外,你可能还需要添加异常处理来确保程序在发生错误时能够正常结束。

    另外,这个程序只是一个基本示例,实际上你可能需要根据具体需求调整SQL语句和条件判断。例如,如果你想要检查其他列,或者处理更复杂的条件,请参考相关文档或资料。

    评论

报告相同问题?