|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre confirmé
![]() Inscription : avril 2011 Messages : 603 ![]() |
Bonour,
J'ai un souci, j'ai des tables sans noms et je n'arrive pas à les supprimer avec pgadmin. Auriez vous une astuce ? merci. |
|
|
00
|
|
|
#2 |
|
Membre Expert
![]() ![]() |
Salut
Comment savoir qu'il y a des tables sans nom? ![]() @+
__________________
Le monde est trop bien programmé pour être l’œuvre du hasard… |
|
00
|
|
|
#3 |
|
Membre confirmé
![]() Inscription : avril 2011 Messages : 603 ![]() |
Dans pgadmin, j'ai des lignes de tables mais qui ne possèdent pas de nom. Je ne sais pas quelle requête m'a généré de telles aberrations mais j'aimerais les supprimer.
CF PJ. Merci et @+. |
|
|
00
|
|
|
#4 | ||
![]() ![]() Inscription : octobre 2008 Messages : 1 708 ![]() |
En principe il n'y a pas de table sans nom mais il y peut y avoir des noms bizarres, par exemple constitués d'espaces uniquement.
Qu'est ce que donne en sql: Code :
|
||
|
|
00
|
|
|
#5 |
|
Membre Expert
![]() ![]() |
Salut
C'est vraiment étrange, mais je suis arrivé à faire... Mais ensuite je l'ais supprimer avec pgadmin (version 1.16.1). Même le ... passe! N'est-il pas mieux que PostgreSQL (censé respecter les normes) empêche de telles dérives. @+
__________________
Le monde est trop bien programmé pour être l’œuvre du hasard… |
|
00
|
|
|
#6 |
![]() ![]() Inscription : octobre 2008 Messages : 1 708 ![]() |
Et c'est quelle norme qui interdit un nom de table avec seulement des espaces?
|
|
|
00
|
|
|
#7 |
|
Membre Expert
![]() ![]() |
Salut estofilo
Ceci n'est pas pour vous contredire. Juste une argumentation.
Je m'arrête là. Mais recevrais vos arguments avec intérêts. @+
__________________
Le monde est trop bien programmé pour être l’œuvre du hasard… |
|
00
|
|
|
#8 |
![]() ![]() Inscription : octobre 2008 Messages : 1 708 ![]() |
Avec Oracle on peut faire CREATE TABLE " " (...), ça ne provoque pas d'erreur. C'est biensûr ridicule comme nom de table mais c'est le choix de l'utilisateur.
Grosso-modo le standard sql dit qu'on peut utiliser des espaces ou n'importe quel autre caractère dans les identifiants tant qu'on met des guillemets autour. Avoir uniquement des espaces est juste un cas particulier de cette règle. Les SGBDs qui appliquent des règles différentes sont justement ceux qui ont choisi de ne pas suivre le standard. Ce n'est pas étonnant que ça concerne MySQL ou Access (je ne dirais rien pour firebird, jamais utilisé). Ceux-là ont comme par hasard leur propre syntaxe SQL avec des backquotes pour MySQL et des crochets pour Access pour entourer les identifiants. |
|
|
00
|
|
|
#9 | |
|
Membre Expert
![]() ![]() |
Salut estofilo
Dans l'ouvrage de Frédéric BROUARD, Rudi BRUCHEZ et Christian SOUTOU (livre censé enseigner le SQL standard),on lit (4ème édition page 60): Citation:
Pour le cas de ORACLE je suis vraiment étonné car je crois avoir lu "ORACLE n'accepte pas d'espace dans les noms d'objets" J'étudie ORACLE par simple curiosité (en fait, je lis tout ce qui concerne les bases de données et qui me tombe sous la main @+
__________________
Le monde est trop bien programmé pour être l’œuvre du hasard… |
|
|
00
|
|
|
#10 |
|
Membre confirmé
![]() Inscription : avril 2011 Messages : 603 ![]() |
Merci pour toutes vos réponses.
En fait je ne vois pas les noms car les tables ont un accent... En faisant un ça marche... P.S : Ce n'est pas moi qui ai donné le nom à ces tables. Peut-on configurer PGADMIN III pour voir le nom des tables ? |
|
|
00
|
|
|
#11 |
|
Membre Expert
![]() ![]() |
Salut
Je pense que c'est un problème d'encodage. Clique sur la base (dans l'arborescence) et regarde les propriétés à droite. Que te donne "codage"? Comment avez-vous reçu la base? @+
__________________
Le monde est trop bien programmé pour être l’œuvre du hasard… |
|
00
|
|
|
#12 | |
![]() ![]() Inscription : octobre 2008 Messages : 1 708 ![]() |
Citation:
La grammaire complète et toutes les règles associées (il y en a des pages) est lisible ici pour SQL-92: http://www.contrib.andrew.cmu.edu/~s...ql/sql1992.txt Voir l'élément lexical nommé <delimited identifier> ds le chapitre 5.2 <token> and <separator>. C'est ça qui fait que la grammaire SQL permet des espaces et plus généralement n'importe quel caractère dans un idenfiant entre guillemets. |
|
|
|
00
|
|
|
#13 |
|
Membre confirmé
![]() Inscription : avril 2011 Messages : 603 ![]() |
|
|
|
00
|
|
|
#14 | |
|
Membre confirmé
![]() Inscription : avril 2011 Messages : 603 ![]() |
Citation:
|
|
|
|
00
|
Copyright © 2000-2013 - www.developpez.com