Hej alle.
Jeg har en stored procedure i min ms-sql database som ser ud som følgende.
- USE [Skytte]
- GO
- /****** Object: StoredProcedure [dbo].[SP_OpretMedlem] Script Date: 03/26/2012 21:23:41 ******/
- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- ALTER PROC [dbo].[SP_OpretMedlem]
- @CPR VARCHAR(10),
- @PostNummer VARCHAR(4),
- @Fornavn VARCHAR(20),
- @Mellemnavn VARCHAR(20),
- @Efternavn VARCHAR(20),
- @Email VARCHAR(30)
- AS
- INSERT INTO MEDLEMMER
- VALUES(@CPR,@PostNummer,@Fornavn,@Mellemnavn,@Efternavn,@Email,'')
Mit spørglsmål er. Hvordan kan jeg i Java "kalde" denne SP for at tilføje et nyt medlem i min database.
I øjeblikket for at tilføje nye medlemmer, gør jeg følgende.
GUI klasse
- case 4:
- System.out.println("Type the following information for the new user");
- System.out.println("CPR");
- String cprNewUser = in.readLine();
-
- System.out.println("Postnummer");
- String postnummerNewUser = in.readLine();
-
- System.out.println("Fornavn");
- String fornavnNewUser = in.readLine();
-
- System.out.println("Mellemnavn");
- String mellemnavnNewUSer = in.readLine();
-
- System.out.println("Efternavn");
- String efternavnNewUser = in.readLine();
-
- System.out.println("Email");
- String emailNewUser = in.readLine();
-
- Member m = new Member (cprNewUser, postnummerNewUser, fornavnNewUser, mellemnavnNewUSer, efternavnNewUser, emailNewUser);
-
- l.addNewMember(m);
-
- break;
Logic klasse
- public void addNewMember(Member m) throws ClassNotFoundException, SQLException
- {
- String cpr = m.getCPR();
- String postnummer = m.getPostnummer();
- String fornavn = m.getFornavn();
- String mellemnavn = m.getMellemnavn();
- String efternavn = m.getEfternavn();
- String email = m.getEmail();
-
- Connection con = DriverManager.getConnection(url);
-
- Statement stmt = con.createStatement();
-
- String sql = null;
-
- sql = ("INSERT INTO MEDLEMMER (CPR, Postnummer, Fornavn, Mellemnavn, Efternavn, Email)");
-
- sql += ("VALUES (" + cpr + ", " + postnummer + ", " + "'" + fornavn + "'" + ", " + "'" + mellemnavn + "'" + ", " + "'" + efternavn + "'" + ", " + "'" + email + "'" + ")");
-
- stmt.executeUpdate(sql);
- }
Jeg leder ikke efter en direkte "copy and paste" løsning. Men hvis der er nogle der kan pege mig i den rigtige retning ville det være super.
Tak på forhånd.
Indlæg senest redigeret d. 26.03.2012 21:29 af Bruger #16700