/ Forside / Teknologi / Udvikling / VB/Basic / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
VB/Basic
#NavnPoint
berpox 2425
pete 1435
CADmageren 1251
gibson 1230
Phylock 887
gandalf 836
AntonV 790
strarup 750
Benjamin... 700
10  tom.kise 610
Hvorfor virker denne SQl kun på programmer~
Fra : Frank Mikkelsen


Dato : 28-06-01 15:28

Hvad er der galt? Sagsnummer, datotil og datofra er brugerangivne data.
Databasen er en Oracle 8i.

SELECT p.initialer, f.dato, f.timer, f.minutter, t.art, t.type,
f.bemaerkning, f.notat, f.debiteret FROM tblType t, tblTidsforbrug f,
tblPerson p Where f.sagsnummer = '" & lblSagsnummer.Caption & "' AND '" &
datofra & "' <= TO_DATE(f.dato, 'DD-MM-YYYY')AND '" & datotil & "' >=
TO_DATE(f.dato,'DD-MM-YYYY')AND t.type_ID = f.type AND f.person_ID =
p.person_id ORDER BY TO_DATE(f.dato, 'DD-MM-YYYY');

MVH Frank



 
 
Bjarke Walling Peter~ (28-06-2001)
Kommentar
Fra : Bjarke Walling Peter~


Dato : 28-06-01 21:36

"Frank Mikkelsen" <flm@it.dk> skrev i en meddelelse
news:9hfeut$1oo3$1@news.cybercity.dk...
> Hvad er der galt? Sagsnummer, datotil og datofra er brugerangivne data.
> Databasen er en Oracle 8i.
>
> SELECT p.initialer, f.dato, f.timer, f.minutter, t.art, t.type,
> f.bemaerkning, f.notat, f.debiteret FROM tblType t, tblTidsforbrug f,
> tblPerson p Where f.sagsnummer = '" & lblSagsnummer.Caption & "' AND '" &
> datofra & "' <= TO_DATE(f.dato, 'DD-MM-YYYY')AND '" & datotil & "' >=
> TO_DATE(f.dato,'DD-MM-YYYY')AND t.type_ID = f.type AND f.person_ID =
> p.person_id ORDER BY TO_DATE(f.dato, 'DD-MM-YYYY');

Nu er jeg jo godt nok elendig til sql, men... ville det ikke være smartere
at formatere datoerne i formatet YYYY-MM-DD ?...
Eks.: 05-11-2001 > 02-07-2002 er true
2001-11-05 > 2002-07-02 er false

Men jeg ved ikke om det er det - jeg kender ikke til TO_DATE(a,b)...

- Bjarke



Tomas Christiansen (02-07-2001)
Kommentar
Fra : Tomas Christiansen


Dato : 02-07-01 07:17

Frank Mikkelsen skrev:
> Hvad er der galt? Sagsnummer, datotil og datofra er brugerangivne data.
> Databasen er en Oracle 8i.

Det ville jo hjælpe EN HEL DEL hvis du f.eks. kom med en fejl-kode!


> SELECT p.initialer, f.dato, f.timer, f.minutter, t.art, t.type,
> f.bemaerkning, f.notat, f.debiteret FROM tblType t, tblTidsforbrug f,
> tblPerson p Where f.sagsnummer = '" & lblSagsnummer.Caption & "' AND '" &
> datofra & "' <= TO_DATE(f.dato, 'DD-MM-YYYY')AND '" & datotil & "' >=

1. Normalt ville man definere <f.date> som et felt af typen Date og så
konvertere <datofra> og <datotil> til datoer i stedet for blot at sætte
<'>er omkring.
2. Der mangler mellemrum mellem <)> og <AND>.

> TO_DATE(f.dato,'DD-MM-YYYY')AND t.type_ID = f.type AND f.person_ID =

3. Her konverteres <f.dato> igen til en dato - hvorfor er feltet ikke
defineret som en dato i databasen?
4. Der mangler mellemrum mellem <)> og <AND>.
5. Hvilken type er <t.type_ID> og <f.person_ID>? Tal eller streng eller?
Skal der <'> omkring værdien?

> p.person_id ORDER BY TO_DATE(f.dato, 'DD-MM-YYYY');

6. <f.dato> igen... ?

-------
Tomas



Søg
Reklame
Statistik
Spørgsmål : 177501
Tips : 31968
Nyheder : 719565
Indlæg : 6408527
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste