Pagina 1 di 4 1 2 3 ... ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 33
  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2005
    Messaggi
    333

    operazioni fra date dentro SQL

    ho 3 campi MEMO nel database che devono rimanere tali

    a1 = data inizio evento 01/05/2005
    a2 = data fine evento 31/05/2005
    a3 = data evento 10/05/2005

    questa è la query che una volta funzionava

    codice:
    sql = "SELECT * FROM eventi WHERE Date() BETWEEN cdate(a2) AND cdate(a1)"
    cioè
    codice:
    sql = "SELECT * FROM eventi WHERE 03/05/2005 BETWEEN 31/05/2005 AND 01/05/2005"
    perchè ora non funziona +?
    il server è win2003

  2. #2
    scusa, le date sono in campi memo di access?

  3. #3
    Utente di HTML.it
    Registrato dal
    Jan 2005
    Messaggi
    333
    si e non posso cambiarli

  4. #4
    e *dentro* al campo c'e' scritto 01/05/2005 o data inizio evento 01/05/2005?

  5. #5
    Utente di HTML.it
    Registrato dal
    Jan 2005
    Messaggi
    333
    a1 = 01/05/2005
    a2 = 31/05/2005
    a3 = 10/05/2005

  6. #6
    Utente di HTML.it
    Registrato dal
    Jan 2005
    Messaggi
    333
    vorrei tradurre questo che funziona

    codice:
    SQL = "SELECT * FROM eventi"
    Set rec = Server.CreateObject("ADODB.Recordset")
    Set Rec=Conn.Execute(SQL)
    While Not rec.EOF
    
    a1=cdate(rec("a1"))
    a2=cdate(rec("a2"))
    a3=cdate(rec("a3"))
    oggi=Date()
    
    if oggi>a1 AND oggi<a2 then Response.Write("ok") else Response.Write("no") end if

  7. #7
    ma con le date scritte in quel modo avrai sempre dei problemi...

    infatti 10/02/2005 è maggiore (informaticamente parlando) di 07/05/2009.... ponzaci

  8. #8
    Utente di HTML.it
    Registrato dal
    Jan 2005
    Messaggi
    333
    perchè allora questo funziona???

    codice:
    SQL = "SELECT * FROM eventi"
    Set rec = Server.CreateObject("ADODB.Recordset")
    Set Rec=Conn.Execute(SQL)
    While Not rec.EOF
    
    a1=cdate(rec("a1"))
    a2=cdate(rec("a2"))
    a3=cdate(rec("a3"))
    oggi=Date()
    
    if oggi>a1 AND oggi<a2 then Response.Write("ok") else Response.Write("no") end if

  9. #9
    perché passi per cdate, ovvio

  10. #10
    Utente di HTML.it
    Registrato dal
    Jan 2005
    Messaggi
    333
    ma perchè se uso il cdate dentro sql non funziona +?

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.