Avatar billede skovborg Nybegynder
26. juni 2001 - 16:23 Der er 3 kommentarer og
1 løsning

Udskrift af aliaser fra database

Hej alle
jeg er ved at lave et system hvor der er nogle monster sql sætninger i men jeg kan ikke finde ud af at skrive database aliaser ud ... her er hvad jeg har prøvet :
SET objRS = objConn.Execute(\"declare @eid varchar(10) \" _
& \"declare @ename varchar (100) \" _
& \"declare @etlf varchar (12) \" _
& \"declare @eadresse varchar (100) \" _
& \"declare @epostno varchar(10) \" _
& \"declare @enote varchar(250) \" _
& \"declare @transName varchar (10) \" _
& \"select @transName = \'FindEmner\' \" _
& \"begin TRANSACTION @transName \" _
& \"select top 1 @eid=eid,@ename=ename,@etlf=etlf, \" _
& \"@eadresse=eadresse,@enote=enote,@epostno=epostno \"_
& \"from emner,konsulenter,postnr \" _
& \"where \" _
& \"konsulenter.kid=postnr.kid and \" _
& \"postnr.postnr=emner.epostno and \" _
& \"konsulenter.kid = \'1\' and  \" _
& \"emner.ekode = \'0\' \" _
& \"update emner  \" _
& \"set emner.ekode = \'100\' \" _
& \"where eid=@eid \" _
& \"commit transaction @transName \" _
& \"select @eid,@ename,@etlf, \" _
& \"@eadresse,@epostno,@enote\")

resultat = objRS.fields(\"@eid\")

jeg har naturligvis også prøvet

resultat = objRS.fields(\"eid\")
men det virker heller ikke.

jeg får denne fejl meddelse :
Fejltype:
ADODB.Recordset (0x800A0CC1)
Elementet kan ikke findes i den samling, der svarer til det anmodede navn eller ordenstal.
/Project1_Local/FindEmne.asp, line 54

Hold da kæft det her spørgsmål blev til en hel roma
;-)

Vi ses
Skovborg
Avatar billede sune.jakobsen Nybegynder
26. juni 2001 - 16:38 #1
Det er nok dit database kald der er noget i vejen med svare det til databasen og tabellernes navn?
Avatar billede sth Novice
26. juni 2001 - 23:49 #2
Hvis det er det er access, bruger jeg tit at lave en forespørgsel i access, for så herefter at vælge vis sql-kode under vis, sql koden sætter jeg så ind i min asp, meeeeennnn det er da muligt at du ikke kan bruge det, for jeg kender ikke noget til \"declare\"  hvad bruges det til ?
Avatar billede skovborg Nybegynder
27. juni 2001 - 00:06 #3
Jeg har prøvet at køre sql sætningen i ms sql og her giver den de rigtigt svar, så selve sql sætningen er helt ok det er bare at få udskriften til at virke der er problemet..
Avatar billede skovborg Nybegynder
03. juli 2001 - 09:18 #4
jeg har fundet svaret her er først lidt kode derefter en storedproc som jeg har lavet :

Set MyConn = Server.createObject(\"ADODB.Connection\")
    Set MyCommand = Server.createObject(\"ADODB.Command\")   
    MyConn.Open \"provider=SQLOLEDB;server=SQL_UDV;DATABASE=BRF;UID=BRF;PWD=BRF\"   
    set MyCommand.ActiveConnection = MyConn
   

       
    MyCommand.CommandType = adCMDStoredProc
\'    MyCommand.CommandText = \"findemner @kid= \'1\', @svar = \' \'\"
    MyCommand.CommandText = \"findemner\"
\'    objComd.CommandText = \"visalleemner\"
   
    set my1Command = MyCommand.CreateParameter(\"kid\",adInteger,adParamInput,4)
    MyCommand.Parameters.Append my1Command

    set my2command = MyCommand.CreateParameter(\"navn\",     adVarchar,    adParamOutput,  100)
    MyCommand.Parameters.Append my2Command
   
    set  my3command = MyCommand.CreateParameter(\"tlf\",     adVarchar,    adParamOutput,  12)
    MyCommand.Parameters.Append my3Command
   
    set my4Command = MyCommand.CreateParameter(\"adresse\",adVarChar,adParamOutput,100)
    MyCommand.Parameters.Append my4Command
   
    set my5command = MyCommand.CreateParameter(\"postnr\",     adVarchar,    adParamOutput,  4)
    MyCommand.Parameters.Append my5Command
   
    set my6Command = MyCommand.CreateParameter(\"note\",adVarChar,adParamOutput,250)
    MyCommand.Parameters.Append my6Command
   
    set my7command = MyCommand.CreateParameter(\"id\",     adVarchar,    adParamOutput,  10)
    MyCommand.Parameters.Append my7Command
   
    set my8command = MyCommand.CreateParameter(\"by\",     adVarchar,    adParamOutput,  100)
    MyCommand.Parameters.Append my8Command
   
    test = \"\" & Session (\"KonName\")
    MyCommand(\"kid\")=\"\" & test\'  \"1\" 

    MyCommand.Execute


og her er der storedproc

CREATE PROCEDURE FindEmner (
@kid integer ,
@Navn varchar(100) OUTPUT,
@tlf varchar(12) OUTPUT,
@adresse varchar (100) OUTPUT ,
@postnr varchar(4) OUTPUT,
@note varchar(250) OUTPUT,
@id varchar(10) OUTPUT,
@by varchar (100) OUTPUT)
AS
declare @eid varchar(10)
declare @ename varchar (100)
declare @etlf varchar (12)
declare @eadresse varchar (100)
declare @epostnr varchar(10)
declare @enote varchar(250)
declare @transName varchar (10)

select @transName = \'FindEmner\'

begin TRANSACTION @transName

select top 1 @id=eid,@navn=ename,@tlf=etlf,
@adresse=eadresse,@note=enote,@postnr=epostno,@by=eby,@navn=ename
from emner,konsulenter,postnr
where
konsulenter.kid=postnr.kid and
postnr.postnr=emner.epostno and
konsulenter.kid = @kid and
emner.ekode = \'0\'
update emner
set emner.ekode = \'100\'
where eid=@id
commit transaction @transName

igen har jeg skrevet en roman er jeg ikke dygtig ???

vi ses
Morten
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