2011-12-01 13 views
11

Sto progettando un database. Ora è su MySQL, ma domani potrebbe migrare su un altro DBMS. Quindi devo prestare attenzione a non usare parole riservate (per MySQL e possibilmente per qualsiasi altro DBMS) come nomi di campi. E non voglio usare parole riservate come nomi di campi, racchiuse tra virgolette o parentesi quadre!Tutte le parole riservate di ogni DBMS

C'è un sito dove posso trovare tutte le parole riservate per ogni DBMS? O almeno per quelli più usati. Sarebbe bello se esistesse uno strumento in cui metti una parola e ti dà tutto il DBMS per il quale è una parola riservata, se esiste.

Se non esiste alcun riferimento o strumento online di questo tipo, , è possibile ricordare un elenco di collegamenti per le pagine di parole riservate di ogni DBMS. Molte grazie!

+0

Se si desidera evitare questo problema, è sufficiente utilizzare un prefisso per i nomi delle tabelle e si sarà quasi certamente sicuri; basta essere ragionevole e utilizzare un breve, evitando possibili nomi dei pacchetti. – Viruzzo

+1

** SUGGERIMENTO **: utilizza il carattere di sottolineatura finale. È possibile evitare semplicemente le collisioni con le parole riservate utilizzando un carattere di sottolineatura finale su tutti i nomi dei database. Le specifiche SQL promettono esplicitamente di non usare mai un underscore finale. Vedi [la mia risposta ad un'altra domanda] (http://stackoverflow.com/a/19758863/642706) per i dettagli. –

risposta

12

WOW ... Ho trovato questo strumento online: Reserved Word Search.

È valido sia per DBMS che per i linguaggi di programmazione. Sembra abbastanza aggiornato.

6

Sì. Ho trovato questo sito ha uno strumento on-line per verificare se la parola inserita è la parola riservata di SQL Server, MySQL, PostgreSQL, Oracle e DB2 ecc .: SQL Reserved Words Checker.

Ma sembra che i suoi dati non siano aggiornati alla versione più recente. È possibile raccogliere le parole riservate per l'ultima versione del database diverso e creare il proprio database "parola riservata".

Questa è la lista ufficiale di parole riservate per alcuni database principali:

La vista del dizionario dati V $ RESERVED_WORDS fornisce ulteriori informazioni su tutte le parole chiave, tra cui, se la parola chiave è sempre riservato o è riservato solo ad usi particolari. Per ulteriori informazioni, consultare il riferimento al database Oracle .

4

Ecco un'altra pagina, in cui è possibile controllare se una parola partita parola riservata in SQL Server, MySQL, PostgreSQL, Oracle, DB2, SQL ANSI o ODBC:

SQL Reserved Word Checker

+0

Non consiglio questo servizio. Elenca * indice * come * Non prenotato * per MySQL 5.0, ma [nel manuale] (https://dev.mysql.com/doc/refman/5.0/en/reserved-words.html) è elencato come riservato . –

+0

Non penso che questo sito sia stato aggiornato da un po '. Ad esempio, avevo bisogno di verificare MySQL 5.5 e ha solo 5.0. Inoltre, l'ultima versione di PostgreSQL elencata sul sito è 8. – tmarkiewicz

2

Questo Drupal.org site ha fatto un parziale di elenco di oltre 800 parole.

Problemi correlati