Oracle
 sql >> Datenbank >  >> RDS >> Oracle

SQLPlus varchar2 gibt Leerzeichen aus

Dies ist ein reines Anzeigeproblem von SQL*Plus. Es gibt (derzeit) keinen Unterschied zwischen VARCHAR und VARCHAR2 Datentyp - weder werden die Daten, die Sie speichern, mit Leerzeichen aufgefüllt. Nur CHAR Spalten würden das tun.

In SQL*Plus können Sie steuern, wie breit der name ist Spalte wird angezeigt

SQL> column name format a30;

zum Beispiel weist SQL*Plus an, 30 Spalten zu verwenden, um die Daten in name anzuzeigen Säule. Sie können dies je nach der tatsächlichen Länge Ihrer Daten nach oben oder unten anpassen, wie viele Daten Sie in eine einzelne Zeile passen möchten usw. Sie müssen dies entweder zusammen mit der SQL-Anweisung in ein Skript einfügen oder Sie werden es tun Sie müssen es in jeder Sitzung replizieren, bevor Sie die Anweisung ausgeben, oder Sie müssen es der Datei login/glogin.sql hinzufügen.

SQL*Plus ist ein wunderbares Tool, wenn Sie versuchen, Textberichte mit fester Breite zu erstellen. Wenn Sie jedoch nur interaktiv Abfragen ausführen, ist dies nicht die benutzerfreundlichste Lösung - das Anpassen der Breite Ihrer Textspalten, der Umgang mit Ausgaben, die länger als Ihre Zeile sind usw. werden sehr schnell alt. Wenn Sie interaktive Entwicklung betreiben, ist ein Tool wie SQL Developer mit einer geeigneten GUI viel benutzerfreundlicher.