2017-05-12 3 views
0

Wie viele Zeichen können maximal in einer SQL-Anweisung in Oracle verwendet werden?Maximale Anzahl oder Zeichen pro Select-Anweisung

+0

Was versuchst du zu tun, da du diese Frage stellst? – jarlh

+0

Ich schreibe einen Code, um eine dynamische Select-Anweisung zu erstellen, die groß sein kann. Ich muss die Größe begrenzen, aber ich möchte nicht Limit erhalten, wenn das maximale Limit in Orakel überschreitet. – Sanke

+0

Ugh Ich habe schreckliche Anweisungen gesehen, die auf viele Seiten gelaufen sind, oder Leute, die Daten in INs eingegeben haben, anstatt relationale Methoden zu verwenden. Relevanter ist, wie Ihr Explain-Plan aussieht und wie hoch die Kosten sind. Versuchen Sie nicht, riesige dynamische Anweisungen zu schreiben, da sie den gemeinsamen Pool von Oracle füllen. Eher in Ihrem Ansatz modular sein. – sandman

Antwort

4

Die Oracle-Dokumentation gibt keine maximale Länge für eine SQL-Abfrage. Check this here.

Dies liegt daran, dass das physische Limit vom Betriebssystem des Datenbankservers abhängt. Es genügt zu sagen, dass das tatsächliche Limit viel größer ist als jede praktische Anfrage, die Sie schreiben (oder sogar generieren könnten).

Es gab eine praktische Grenze für EXECUTE IMMEDIATE von 32767, weil das die Grenze einer PL/SQL varchar2-Variable ist. Aber in diesen Tagen können wir EXECUTE IMMEDIATE mit viel größeren Aussagen mit clob füttern. Immer noch nicht, dass wir sollten :)

0

Es hängt von vielen Dingen wie Speicherplatz auf der Festplatte und Speicher usw. ab. Aber Sie sollten keine großen Daten in eine Abfrage stellen. Es ist keine gute Option.

Normalerweise folgt, was ich sagte, es erfordert keine großen Zeichen in der Abfrage, die Sie diese Frage stellen könnte.

Verwandte Themen