Avatar billede miclarsen Nybegynder
30. maj 2006 - 10:35 Der er 7 kommentarer og
1 løsning

Subquery fejl i INSERT

Hej
Når jeg laver denne insert får jeg en fejl. Er der nogen der kan greje hvad det er jeg gør galt. Kan det ikke lade sig gøre at lave inserts på denne måde???

Insert:

INSERT INTO tblLog ( System_ID,Server_ID, Type_ID,
            Short_Description, Long_Description,
                Application_Pool)       
VALUES (1,
(SELECT [ID] FROM tblServer WHERE [NAME] = 'SERVER1'),
'TYPE',
'SHORT',
'LONG',
'APP_POOL');


Fejl:

Server: Msg 1046, Level 15, State 1, Line 6
Subqueries are not allowed in this context. Only scalar expressions are allowed.
Avatar billede dr_chaos Nybegynder
30. maj 2006 - 10:38 #1
prøv med:
INSERT INTO tblLog ( System_ID,Server_ID, Type_ID,
            Short_Description, Long_Description,
                Application_Pool)     
SELECT 1,[ID],'TYPE',
'SHORT',
'LONG',
'APP_POOL' FROM tblServer WHERE [NAME] = 'SERVER1'),
Avatar billede dr_chaos Nybegynder
30. maj 2006 - 10:38 #2
skulle lige fjerne et komma
INSERT INTO tblLog ( System_ID,Server_ID, Type_ID,
            Short_Description, Long_Description,
                Application_Pool)   
SELECT 1,[ID],'TYPE',
'SHORT',
'LONG',
'APP_POOL' FROM tblServer WHERE [NAME] = 'SERVER1')
Avatar billede miclarsen Nybegynder
30. maj 2006 - 10:41 #3
Det er kun Server_ID der skal selectes fra en anden tabel. Resten af værdierne skal bare sættes ind som i en almindelig INSERT.
Avatar billede dr_chaos Nybegynder
30. maj 2006 - 10:58 #4
Det bliver de også på den måde.
Men du kan ikke lave en subselect på den måde du forsøgte at gøre det.
Derfor laver man en select på den måde jeg har gjort det.
Avatar billede ldanielsen Nybegynder
30. maj 2006 - 11:04 #5
Hvis der er flere poster i tblServer der har samme NAME såp kunne der komme flere poster ind end én. Brug evt. TOP 1 for en sikkerheds skyld.
Avatar billede miclarsen Nybegynder
31. maj 2006 - 11:40 #6
-> dr chaos
Det virkerde jo..
Smid et svar så jeg kan overfører nogle point
Avatar billede dr_chaos Nybegynder
31. maj 2006 - 12:43 #7
perfekt og svar :)
Avatar billede miclarsen Nybegynder
31. maj 2006 - 13:28 #8
Tak fro hjælpen...
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
Computerworld tilbyder specialiserede kurser i database-management

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