sql >> Databasteknik >  >> RDS >> Sqlserver

Hur skickar man tabellvärderade parametrar från Java till SQL Server lagrad procedur?

Med input från Mark Rotteveel kunde jag göra det. Tack Mark, Sean tack för din input också. Här är arbetskoden för alla som kan ha nytta av den.

String jdbcurl = "jdbc:sqlserver://TestServer:1433;DatabaseName=Student";
connection = DriverManager.getConnection(jdbcurl,"username","password");

SQLServerDataTable stuTypeDT = new SQLServerDataTable(); 
stuTypeDT.addColumnMetadata("StudentId", java.sql.Types.NUMERIC);
stuTypeDT.addColumnMetadata("Name", java.sql.Types.VARCHAR);
stuTypeDT.addColumnMetadata("Department", java.sql.Types.VARCHAR);
stuTypeDT.addColumnMetadata("Address", java.sql.Types.VARCHAR);

stuTypeDT.addRow("1","Tom", "A", "123 Street");
stuTypeDT.addRow("2","Jery", "B", "456 Street");
stuTypeDT.addRow("3","Mac", "C", "Vancour");

String ececStoredProc = "EXEC InsertStudentInfo ?";
SQLServerPreparedStatement pStmt = (SQLServerPreparedStatement)connection.prepareStatement(ececStoredProc);
pStmt.setStructured(1, "dbo.StudentInfoType", stuTypeDT);
pStmt.execute();



  1. Vad är vårintegration?

  2. Motsvarighet till varchar(max) i MySQL?

  3. Kontrollera/ändra kompatibilitetsnivån för en databas i SQL Server (SSMS)

  4. MySQL-prestanda:MyISAM vs InnoDB