Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Làm cách nào để lấy kết quả nhiều bảng của một thủ tục được lưu trữ bằng SimpleJDBCCall vào mùa xuân?

Tôi đã không biết gì nhất, nó thực sự hoạt động! Bạn có thể chỉ định cả hai tập kết quả, với mỗi bộ ánh xạ riêng.

SimpleJdbcCall call = new SimpleJdbcCall(this.jdbc)
           .withProcedureName("get_users3")
           .returningResultSet("rs1", new ParameterizedRowMapper<Object[]>()
           {
              @Override
              public Object[] mapRow(ResultSet rs, int rowNum) throws SQLException
              {
                 return new Object[] { rowNum, rs.getInt(1), rs.getString(2) };
              }
           })
           .returningResultSet("rs2", new ParameterizedRowMapper<Object[]>()
           {
              @Override
              public Object[] mapRow(ResultSet rs, int rowNum) throws SQLException
              {
                 return new Object[] { rowNum, rs.getInt(1), rs.getString(2) };
              }
           });

  Map<String, Object> res = call.execute();
  assertNotNull(res.get("rs1"));
  assertNotNull(res.get("rs2"));
  List<Object[]> l1 = (List<Object[]>)res.get("rs1");
  List<Object[]> l2 = (List<Object[]>)res.get("rs2");



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm cách nào để kết nối với SQL Server 2008 R2 bằng django-mssql?

  2. INNER JOIN Where Mệnh đề

  3. Truy vấn SQL - Nối kết quả thành một chuỗi

  4. Nhóm theo giá trị null và không null

  5. Truy vấn SQL để nhận tập kết quả chỉ trong hai cột