Je suis nouveau sur la plateforme Oracle (ayant principalement utilisé MySQL, avec un peu de Postgres et SQL Server aussi). J'ai récemment découvert la déclaration suivanteDifférences entre SQL Plus et SQL "normal"?
DESC TABLE_NAME;
ne fonctionnera que dans l'outil SQL * Plus que j'utilise pour tester mes requêtes. Cela ne fonctionnera PAS lorsque j'utiliserai les fonctions standard de PHP pour me connecter à la base de données Oracle. Je dois utiliser quelque chose comme
SELECT * FROM USER_TAB_COLUMNS WHERE TABLE_NAME = 'TABLE_NAME'
à la place. D'après ce que je comprends, c'est parce que la déclaration "DESC" est un add-on dans l'application SQL * Plus.
Mes questions sont
- Est-ce que je comprends bien, ou est-il quelque chose de plus subtil qui se passe?
- Quels autres ajouts spéciaux y a-t-il à SQL * Plus?
- Existe-t-il un moyen de désactiver ces ajouts spéciaux pendant que je m'adresse à Oracle?
- Tout autre conseil général pour Oracle newb de vetrans de la plate-forme est apprécié.
1/ou plus spécifiquement, SQL est le langage que le serveur comprend et utilise pour renvoyer des résultats. Vous ne pouvez donc exécuter que des requêtes SQL depuis PHP. Oracle comprend le SQL standard, mais possède certaines de ses propres extensions ... DESC est seulement construit dans sql * plus. 4/Si vous travaillez sur Linux ou Solaris sans aucun outil graphique comme je le suis, vous pourriez être bloqué avec sqlplus. sqlplus par défaut n'est pas l'ancienne flèche vers le haut pour la dernière commande tapée. Si vous téléchargez/construisez et installez la bibliothèque rlwrap, vous pouvez exécuter sqlplus avec rlwrap sqlplus ... Il y a aussi gqlplus mais votre salaire peut varier. – Matt