Avatar billede psyclown Nybegynder
26. december 2002 - 13:52 Der er 19 kommentarer og
1 løsning

spm. ang. MsSQL

Jeg oprettede et spørgsmål for en uges tid siden:
http://www.eksperten.dk/spm/296231

Just4fun skrev at jeg skulle bruge noget MsSQL, jeg har bare aldrig arbejde med MsSQL før, så jeg har lige nogle spørgsmål, som nogen af jer måske kan svarer på.

Nu har jeg allerede spurgt om dette i det andet spørgsmål, men jeg vil lige rids det op.

Nu kan i jo se hvad Just4fun har skrevet af forslag, men hvordan skal MsSQL skrives ind i min kode ?

Jeg regner med at MsSQL kan køre sammen med Access, men hvordan ? Skal jeg lave noget om i min forbindelse til database eller ?

Håber ikke det er for meget besvær.

På forhånd tak!
Avatar billede orca Nybegynder
26. december 2002 - 14:31 #1
SQL Koden er næsten identisk, det er således kun din database forbindelse, altså din "DSN" der skal ændres. Men har du adgang til en MSSQL DB server? Den er ikke ligesom Access, det kræver server software, og den er ikke billig.
Avatar billede psyclown Nybegynder
26. december 2002 - 14:39 #2
Jeg har wannafind webhotel og det ser ikke rigtigt ud til at det understøtter MsSQL DB server, men kan det klares uden MsSQL DB server ?

Er det rigtigt skrevet op det her:

SET ROWCOUNT 5;
SQL = "SELECT felt1 AS f1, felt2 AS f2 FROM Table1 "
SQL = SQL & "UNION "
SQL = SQL & "SELECT feltx AS f1, felty AS f2 FROM Table2 "
SQL = SQL & "order by f1"

ellers skal det skrives på en anden måde ??
Avatar billede orca Nybegynder
26. december 2002 - 14:43 #3
Det ser rigtig nok ud, men Access understøtter det ikke.
Avatar billede psyclown Nybegynder
26. december 2002 - 14:45 #4
ok, så hjælper det jo ikke så meget
Avatar billede werd Nybegynder
26. december 2002 - 14:45 #5
for at køre msSQL skal din server understøtte det!! - og access og msSQL er langt fra det samme, men SQL sætningerne er helt ens. Det er som orca siger kun DSN (opkald til databasen) der skal ændres!

Mit råd vil være at holde dig til access, medmindre dit webhotel understøtter msSQL, hvilket det ikke så ud til!
Avatar billede psyclown Nybegynder
26. december 2002 - 14:46 #6
Men der må vel være en anden måde jeg kan klare mit problem på, altså det jeg spurgte om i det andet spørgsmål.
http://www.eksperten.dk/spm/296231
Avatar billede orca Nybegynder
26. december 2002 - 15:24 #7
werd -> SQL sætningerne er ikke helt identiske, men oftest er de :)
Avatar billede psyclown Nybegynder
26. december 2002 - 17:48 #8
Ingen der kan hjælpe ??
Avatar billede orca Nybegynder
26. december 2002 - 17:56 #9
Jo, ændr din databasestruktur således at svar og emner ligger i samme tabel, det er klart det mest logiske.
Avatar billede psyclown Nybegynder
26. december 2002 - 18:08 #10
Jeg ved godt at det er nemmere, men nu gider jeg ikke lige at lave min struktur om, men jeg har prøvet at lave det som erikjacobsen foreslog, men serveren "hænger" bare, hvis jeg prøver at køre scriptet:

Set conntemp = Server.CreateObject("ADoDB.Connection")
conntemp.open DSN
SQLNYEINDLAEG = "SELECT * FROM F_EMNER, F_SVAR"
Set rsNyeIndlaeg = conntemp.execute(SQLNYEINDLAEG)

If Not (rsNyeIndlaeg.BOF or rsNyeIndlaeg.EOF) Then
    Set conntemp = Server.CreateObject("ADoDB.Connection")
    conntemp.open DSN
    SQLFINDEMNE = "SELECT TOP 5 * FROM F_EMNER ORDER BY F_E_DATO ASC"
    Set rsNyeFindEmne = conntemp.execute(SQLFINDEMNE)

    If Not rsNyeFindEmne.EOF Then
       
        EmneDato = rsNyeFindEmne("F_E_DATO")
       
        Do While Not rsNyeFindEmne.EOF
            ListDato = ""& EmneDato &","""
        Loop
        ListDato = Left(ListDato,Len(ListDato)-1)
        ArrDato = Split(ListDato,",")
    End If

    Response.Write "                <table style=""border-left: 1 solid #000000; border-right: 1 solid #000000; border-bottom: 1 solid #000000"" bgcolor=""#336699"" align=""center"" border=""0"" cellpadding=""1"" cellspacing=""0"" width=""100%"">"& vbCrLf
    Response.Write "                    <tr>"& vbCrLf
    Response.Write "                        <td>"& vbCrLf
    Do While Not rsNyeIndlaeg.EOF
            Response.Write "                            <img src=""images/pil.gif""> "& FormatDate(rsNyeFindEmne("F_S_DATO"), 4) &" - <a href=""visemne.asp?eid="& rsNyeFindEmne("EID") &"&fid="& rsNyeFindEmne("FID") &""">"& rsNyeFindEmne("F_E_EMNE") &"</a><br>"& vbCrLf
            Response.Write ArrDato(5)
        rsNyeIndlaeg.MoveNext
    Loop
    rsNyeIndlaeg.Close : Set rsNyeIndlaeg = Nothing
Else
    Response.Write "                            <center>Der er endnu ikke nogen indlæg i forummet</center>"& vbCrLf
End If

Det kan være at du kan se hvad jeg gør galt her.
Avatar billede _just4fun_ Nybegynder
27. december 2002 - 14:00 #11
psyclown-> UPS! Jeg kan se at mine forkortelser har bragt forvirring her, det må du sku undskylde... Jeg tænkte ikke over at jeg skulle have skrevet
MsSqlServer .... skrev kun MsSql... Sorry...
Avatar billede psyclown Nybegynder
27. december 2002 - 19:32 #12
Det gør ikke noget, jeg gider ikke at fedte mere rundt i det MsSQL server...Jeg prøver at se om jeg kan få overstående til at virke, men der er ikke rigtigt nogen der gider at hjælpe, så jeg kommer jo nok ikke længere, lige forløbigt
Avatar billede _just4fun_ Nybegynder
28. december 2002 - 10:30 #13
... testede lige.. Du kan i Access gøre det på denne måde:
SQL = "select top 5 * from ("
SQL = SQL & "SELECT felt1 AS f1, felt2 AS f2 FROM Table1 "
SQL = SQL & "UNION "
SQL = SQL & "SELECT feltx AS f1, felty AS f2 FROM Table2 "
SQL = SQL & "order by f1"
SQL = SQL & ")"

)
Avatar billede _just4fun_ Nybegynder
28. december 2002 - 10:31 #14
(testet på Access2000)
Avatar billede psyclown Nybegynder
29. december 2002 - 00:24 #15
det er ser jo lovende ud, men hvilke felter skal jeg sætte ind istedet for felt1, f1 osv. ?
Avatar billede _just4fun_ Nybegynder
29. december 2002 - 12:42 #16
Jeg kan ikke se hvor svaroverskrifen skal komme fra, så jeg har hardcodet den kest der skal stå som tekst for svaret:

SELECT TOP 5 * from (
EID, FID, F_E_DATO, F_E_EMNE as myText from F_EMNER
UNION
EID, FID, F_S_DATO, 'Svaroverskrift' as myText From F_SVAR
ORDER BY F_S_DATO DESC
)
Avatar billede _just4fun_ Nybegynder
29. december 2002 - 13:09 #17
Ouch...
SELECT TOP 5 * from (
SELECT EID, FID, F_E_DATO, F_E_EMNE as myText from F_EMNER
UNION
SELECT EID, FID, F_S_DATO, 'Svaroverskrift' as myText From F_SVAR
ORDER BY F_S_DATO DESC
)
Avatar billede psyclown Nybegynder
29. december 2002 - 23:43 #18
det er jo så lidt et problem, for der er ikke noget der hedder overskrift i F_SVAR, for det er jo bare et svar til et emne
Avatar billede psyclown Nybegynder
29. december 2002 - 23:46 #19
Det virker jo sådan set fint nok, men problemet ligger jo i at der ikke er noget "svaroverskrift", men kan man ikke få den til at skrive Emneoverskriften på de svar som er nye, hvis du forstår
Avatar billede _just4fun_ Nybegynder
29. december 2002 - 23:51 #20
jow.. så skal man vel joine lidt ala
SELECT TOP 5 * from (
SELECT EID, FID, F_E_DATO, F_E_EMNE as myText from F_EMNER
UNION
SELECT S.EID, S.FID, S.F_S_DATO, 'Svar til ' + E.F_E_EMNE as myText From F_SVAR as S
Inner join F_EMNER as E on S.EID = E.EID
ORDER BY F_S_DATO DESC
)
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