sql >> Database >  >> RDS >> Sqlserver

Opgeslagen procedure aanroepen met tabelwaardeparameter uit java

Dit wordt hier gedocumenteerd in de handleiding van de JDBC-driver. In jouw geval zou je dit moeten doen:

try (SQLServerCallableStatement stmt =
    (SQLServerCallableStatement) con.prepareCall("{call test(?)}")) {

    SQLServerDataTable table = new SQLServerDataTable();   
    sourceDataTable.addColumnMetadata("n", java.sql.Types.INTEGER);   

    sourceDataTable.addRow(9);
    sourceDataTable.addRow(12);
    sourceDataTable.addRow(27);
    sourceDataTable.addRow(37);

    stmt.setStructured(1, "dbo.integer_list_tbltype", table);  
}

Ik heb dit onlangs ook gedocumenteerd in een artikel.



  1. Een gebruiker maken in Oracle Multitenant 12c zonder C##-voorvoegsel

  2. Android-fout:kan deze bewerking niet uitvoeren omdat de verbindingspool is gesloten

  3. Is een view sneller dan een simpele query?

  4. sqlite get-veld met meer dan 2 MB