Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    [sql] Spazio nel nome tabella

    Ho un problema: in un db ho tabelle col nome che contiene uno spazio tipo "milano roma".
    per richiamare queste tabelle come faccio?

    Se uso
    codice:
    "SELECT * FROM milano roma ORDER BY id"
    non va

    idee?
    tipo usare [[:space:]] ?
    ma come?
    Forrest
    Mail Me

  2. #2
    prova con questo:

    SELECT * from 'Milano Roma'

    nn so però se funge...
    Matteo
    Lunga vita agli ULTRAS
    La nostra fede non si diffida..Ultras Liberi

  3. #3
    nada nn va, mi dice System.Data.OleDb.OleDbException: Syntax error in query. Incomplete query clause.
    Forrest
    Mail Me

  4. #4
    Provabilmente funziona come detto da L'inferno cmq la sintassi corretta sarebbe SELECT * FROM `milano roma`...

  5. #5

    RISOLTO

    Nella gestione delle interrogazioni a un database MS Access (e non solo), prima o poi, si incontrano identificatori (nomi di tabelle o di campi) composti da più di una parola separate da spazio; in ogni caso, difficilmente troveremo nomi di campi o di tabelle costituiti da più di due parole. Se eseguiamo, per esempio, una query di selezione su una tabella denominata "fatture emesse" con la seguente sintassi:
    codice:
    SELECT * FROM fatture emesse
    otterremo un errore. L'interprete della query infatti, riconoscerà come nome della tabella solo la parola "fatture" e darà un errore a causa della presenza della successiva parola "emesse".
    Per ovviare a tale inconveniente, è necessario racchiudere i nomi di tabelle e campi fra parentesi quadre; generalizzando l'esempio appena visto al caso in cui anche i nomi dei campi siano costituiti da due parole:
    codice:
    SELECT [CAMPO 1], [CAMPO 2] FROM [fatture emesse]
    Ovviamente è possibile utilizzare questa sintassi anche nel caso di campi o tabelle costituiti da un'unica parola.
    Tra l'altro questa tecnica evita anche eventuali errori dovuti all'utilizzo, come nomi di campo o di tabella, di parole riservate SQL. Se per esempio la nostra tabella contenesse un campo denominato "PASSWORD", un'istruzione SQL del genere causerebbe un errore:
    codice:
    SELECT PASSWORD FROM <nometabella>
    in quanto "PASSWORD" è una keyword riservata di SQL. Racchiudiamo quindi tale nome di campo fra parentesi quadre...
    codice:
    SELECT [PASSWORD] FROM <nometabella>
    ...e dormiamo sonni tranquilli! :-)
    Forrest
    Mail Me

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.