Avatar billede y-nose Nybegynder
17. september 2004 - 14:06 Der er 3 kommentarer

sql insert

jeg ville gerne vide om det er muligt at få  svar tilbage med det samme på det man inserter i en tabel alså at få et resultSet på et INSERT statment og i så fald hvordan.

feks hvis man har en tabel person som indenholder

person_ID int NOT NULL DEFAULT 1 AUTO_INCREMENT,
fornavn varchar(50),
efternavn varchar(50),
PRIMARY KEY (person_ID)

dvs. at hvis jeg f.eks.

insert INTO person(fornavn, efternavn) values("Erik", "Den Røde")

det jeg gerne så vil er at når/ligeså snart sql setningen er udført vil jeg gerne have et svar tilbage med hvad person_ID er.



et lille ekstra spørgsmål (ekstra spørgsmålet giver ikke points)
er det muligt at

insert into person() values()
alså at oprette en person kun med et person_ID


VH Y-nose
Avatar billede dannv Nybegynder
17. september 2004 - 14:26 #1
Hej Y-nose,

Følgende fungerer

String insertUser = "INSERT INTO person.......... ";

stmt.executeUpdate(insertUser, Statement.RETURN_GENERATED_KEYS);

ResultSet key = stmt.getGeneratedKeys();

if (key.next())
  int autoIncKey = key.getInt(1);
else
  .....

Mht til at oprette en person uden værdier skulle dette være fuldt lovligt sålænge dine felter tillader null værdier... Der kan sikkert være forskel fra db til db...!
Avatar billede arne_v Ekspert
17. september 2004 - 14:40 #2
Forudsætter JDBC 3.0 compliant JDBC driver, men det er de fleste nok idag.
Avatar billede y-nose Nybegynder
17. september 2004 - 21:25 #3
tak for hjælpen håber det virker kan desvære først teste det lørdag/søndag men hvis det virker der skal du nok få points
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester