Tuesday 21 November 2017

Sybase Iq Binary Optionen


Binäre Datentypen Beschreibung Zur Speicherung von rohen Binärdaten, wie zB Bilder, in einer hexadezimalen Notation bis zu einer Länge von (32K 1) Bytes. Der Datentyp UNIQUEIDENTIFIER wird für die Speicherung von UUID (auch GUID) verwendet. Die Binärdaten beginnen mit den Zeichen 0x oder 0X und können eine beliebige Ziffernkombination und die Groß - und Kleinbuchstaben A bis F enthalten. Sie können die Spaltenlänge in Bytes angeben oder die Standardlänge von 1 Byte verwenden. Jedes Byte speichert 2 hexadezimale Ziffern. Obwohl die Standardlänge 1 Byte beträgt, empfiehlt Sybase, dass Sie immer eine gerade Anzahl von Zeichen für BINARY und VARBINARY Spaltenlänge angeben. Wenn Sie einen Wert eingeben, der länger als die angegebene Spaltenlänge ist, schneidet Sybase IQ den Eintrag auf die angegebene Länge ohne Warnung oder Fehler ab. BINARY Binärdaten der Länge Länge Bytes. Wenn die Länge weggelassen wird, ist die Voreinstellung 1 Byte. Die maximal zulässige Größe beträgt 255 Byte. Verwenden Sie den BINARY für die feste Länge BINARY für Daten, bei denen alle Einträge annähernd gleich lang sind. Da die Einträge in BINARY-Spalten auf die Spaltenlängenlänge null aufgefüllt sind. Sie benötigen möglicherweise mehr Speicherplatz als Einträge in VARBINARY Spalten. VARBINARY Binärdaten bis zu einer Länge von max-length Bytes. Wenn max-length weggelassen wird, ist die Voreinstellung 1 Byte. Die maximal zulässige Größe beträgt (32K 1) Bytes. Verwenden Sie den Binärtyp VARBINARY mit variabler Länge für Daten, von denen erwartet wird, dass er in der Länge stark variiert. Als separat lizenzierte Option unterstützt Sybase IQ binäre Großobjekt - (BLOB-) Daten mit einer Länge von null (0) bis 512TB (Terabyte) für eine IQ-Seitengröße von 128KB oder 2PB (Petabyte) für eine IQ-Seitengröße von 512KB. Die maximale Länge ist gleich 4GB multipliziert mit der Datenbankseitengröße. Siehe Großes Objektmanagement in Sybase IQ. Informationen zu den Datentypen LONG BINARY und IMAGE finden Sie unter Binärdatentypen. Behandlung von nachlaufenden Nullen Alle BINARY Säulen sind mit Nullen auf die volle Breite der Säule gepolstert. Nachlaufende Nullen werden in allen VARBINARY-Spalten abgeschnitten. Im folgenden Beispiel wird eine Tabelle mit allen vier Variationen von BINARY - und VARBINARY-Datentypen erstellt, die mit NULL und NOT NULL definiert wurden. Die gleichen Daten werden in alle vier Spalten eingefügt und nach dem Datentyp der Spalte gepolstert oder abgeschnitten. Plattformabhängigkeit Die genaue Form, in der Sie einen bestimmten Wert eingeben, hängt von der Plattform ab, die Sie verwenden. Daher können Berechnungen mit binären Daten unterschiedliche Ergebnisse auf verschiedenen Maschinen erzeugen. Für plattformunabhängige Konvertierungen zwischen hexadezimalen Strings und Integern verwenden Sie die Funktionen INTTOHEX und HEXTOINT und nicht die plattformspezifische CONVERT-Funktion. Weitere Informationen finden Sie im Abschnitt Datentypumwandlungsfunktionen. String-Operatoren Die Verknüpfungs-String-Operatoren und beide unterstützen Binär-Typ-Daten. Eine explizite Umwandlung von binären Operanden in Zeichen-Datentypen ist beim Operator nicht erforderlich. Eine explizite und implizite Datenkonvertierung ergibt jedoch unterschiedliche Ergebnisse. Einschränkungen für BINARY - und VARBINARY-Daten Für Spalten, die BINARY - und VARBINARY-Daten enthalten, gelten folgende Einschränkungen: Sie können die Aggregatfunktionen SUM nicht verwenden. AVG STDDEV Oder VARIANCE mit den binären Datentypen. Die aggregierten Funktionen MIN. MAX. Und COUNT unterstützen die Binärdatentypen BINARY und VARBINARY. HNG WD DATE. ZEIT . Und DTTM-Indizes unterstützen keine BINARY - oder VARBINARY-Daten. Nur die Standardindex - und CMP-Indextypen werden für VARBINARY-Daten mit einer Länge von mehr als 255 Bytes unterstützt. Bit-Operationen werden auf BINARY - und VARBINARY-Daten unterstützt, die 8 Bytes oder weniger lang sind. Kompatibilität Die Behandlung von nachlaufenden Nullen in binären Daten unterscheidet sich zwischen Sybase IQ, SQL Anywhere und Adaptive Server Enterprise: Tabelle 3-4: Behandlung von nachlaufenden Nullen Trunkierte, nicht gepolsterte Adaptive Server Enterprise, SQL Anywhere und Sybase IQ unterstützen die STRINGRTRUNCATION-Datenbank Option, die die Fehlermeldung berücksichtigt, wenn eine INSERT - oder UPDATE-Zeichenfolge abgeschnitten wird. Bei Transact-SQL-kompatiblen Zeichenfolgenvergleichen setzen Sie die Option STRINGRTRUNCATION auf denselben Wert in beiden Datenbanken. Sie können die STRINGRTRUNCATION-Option auch beim Laden von Daten in eine Tabelle einstellen, um Sie darauf aufmerksam zu machen, dass die Daten zu groß sind, um in das Feld zu laden. Der Standardwert ist EIN. Bitoperationen auf Binärtypdaten werden von Adaptive Server Enterprise nicht unterstützt. SQL Anywhere unterstützt nur Bitoperationen gegen die ersten vier Bytes von Binärtypdaten. Sybase IQ unterstützt Bitoperationen gegen die ersten acht Bytes von Binärtypdaten. UNIQUEIDENTIFIER Wird für die Speicherung von UUID (auch GUID) verwendet. Der UNIQUEIDENTIFIER-Datentyp wird häufig für einen Primärschlüssel oder eine andere eindeutige Spalte verwendet, um UUID-Werte (Universally Unique Identifier) ​​zu halten, die verwendet werden können, um Zeilen eindeutig zu identifizieren. Die NEWID-Funktion erzeugt UUID-Werte so, dass ein auf einem Rechner erzeugter Wert nicht mit einer UUID übereinstimmt, die auf einem anderen Rechner erzeugt wird. UNIQUEIDENTIFIER-Werte, die mit NEWID generiert wurden, können daher als Schlüssel in einer Synchronisationsumgebung verwendet werden. Beispielsweise aktualisiert die folgende Anweisung die Tabelle mytab und setzt den Wert der Spalte uidcol auf einen eindeutigen Bezeichner, der von der NEWID-Funktion erzeugt wird, wenn der aktuelle Wert der Spalte NULL ist. Wenn Sie die folgende Anweisung ausführen, wird die eindeutige Kennung als BINARY (16) zurückgegeben. Beispielsweise könnte der Wert 0xd3749fe09cf446e399913bc6434f1f08 sein. Sie können diese Zeichenfolge mit der Funktion UUIDTOSTR () in ein lesbares Format umwandeln. UUID-Werte werden auch als GUIDs (Globally Unique Identifier) ​​bezeichnet. Mit den Funktionen STRTOUUID und UUIDTOSTR werden Werte zwischen UNIQUEIDENTIFIER und Stringdarstellungen konvertiert. UNIQUEIDENTIFIER-Werte werden gespeichert und als BINARY (16) zurückgegeben. Da die UNIQUEIDENTIFIER-Werte groß sind, ist die Verwendung von UNSIGNED BIGINT - oder UNSIGNED INT-Identitätsspalten anstelle von UNIQUEIDENTIFIER effizienter, wenn Sie keine standardmäßigen Identifikationsdaten für die Datenbank benötigen. Standards und Kompatibilität für UNIQUEIDENTIFIER SQL92 Erweiterung des Herstellers Sybase Unterstützt von SQL Anywhere. Wird von Adaptive Server Enterprise nicht unterstützt. Rückwärtskompatibilität In Datenbanken, die vor der Sybase IQ Version 12.7 erstellt wurden, ist die STRTOUUID. UUIDTOSTR Und NEWID-Funktionen wurden durch CIS-Funktionskompensation unterstützt. In den Versionen 15.1 und später ist die STRTOUUID. UUIDTOSTR Und NEWID-Funktionen sind native Sybase IQ-Funktionen. Weitere Informationen zum UNIQUEIDENTIFIER: Die SAP Sybase IQ Unstructured Data Analytic (UDA) Option erweitert die Möglichkeiten von SAP Sybase IQ, Textanalyse (Data Mining) durchzuführen. Diese Option ermöglicht die Erstellung von Zeichen Large Objects (CLOB) und Binary Large Objects Spalten, die zum Speichern und Bearbeiten von binären Dokumenten (wie MS Excel, MS Wort usw.) und Langtextspalten (gefilterter Inhalt der binären Objekte) verwendet werden. Um Einblicke aus diesen CLOB zu erhalten, müssen wir diese Spalten indizieren und String-Funktionen verwenden, um Informationen abzurufen, zu vergleichen und zu extrahieren. Ein Fall-sensitive Datenbanken können: Komplexität des Abbauprozesses hinzufügen, indem es komplexe Abfrageprädikate erfordert und bei Auslassungen aufgrund möglicher Groß - und Kleinbuchstaben-Kombination (fehlerhaft oder nicht) Platz macht. Es gibt mehrere Möglichkeiten, die genutzt werden können, um die Auswirkungen der Fallempfindlichkeit während des Data Mining zu minimieren, lassen Sie einige von ihnen: Verwenden Sie jede mögliche Kombination von Groß - und Kleinschreibung in den Prädikaten Ihrer Fragen (viele Möglichkeiten, nicht empfohlen). Verwenden Sie die Funktion im Prädikat der Abfragen, um den Inhalt der Spalte in den oberen oder unteren Fall zu konvertieren, bevor Sie einen Vergleichsoperator verwenden. Wählen Sie aus MyUser. Mytable Wo lcase (mycolum) wie lsquoterm8217 Diese Arbeit gut für String-Spalten, die nicht CLOB die LCASE, UCASE, LOWER und UPPER-Funktion sind nicht auf CLOB Datentyp Spalten unterstützt. Konvertieren Sie den vorgefilterten Text in den oberen oder unteren Fall, bevor Sie ihn auf der CLOB-Spalte speichern, verwenden Sie denselben Fall in dem gesamten Prädikat Ihrer Abfragen. Erstellen Sie die Datenbank mit der Option CASE IGNORE Diese Option kann nach dem Erstellen der Datenbank nicht geändert werden. Wenn die SAP-Sybase-IQ-Datenbank primär für den Data Mining verwendet wird und der Fall ignoriert werden kann, empfiehlt es sich, die Datenbank mit CASE IGNORE-Eigenschaft standardmäßig zu erstellen. Alle SAP Sybase IQ-Datenbank wird mit CASE RESPECT erstellt property. LOAD TABLE-Anweisung DATETIME ( MMDDYY hh: mm: ssaa) Sybase IQ verfügt über integrierte Lastoptimierungen für gemeinsame Datums-, Zeit - und datetime-Formate. Wenn Ihre Daten, die geladen werden sollen, mit einem dieser Formate übereinstimmen, können Sie die Ladezeit erheblich verringern, indem Sie das entsprechende Format verwenden. Eine Liste dieser Formate und Details zur Optimierung der Leistung beim Laden von Datums - und Datumsdaten finden Sie in Kapitel 7, Verschieben von Daten in und aus Datenbanken im Sybase IQ Systemverwaltungshandbuch. Sie können auch das Datetime-Feld als ASCII-Feld mit fester Breite (wie oben beschrieben) angeben und mit der Option FILLER (1) das Spaltenbegrenzer überspringen. Weitere Informationen zum Festlegen von Datums - und Zeitdaten finden Sie unter Datums - und Zeitdatentypen oder Kapitel 7, Verschieben von Daten in und aus Datenbanken im Sybase IQ Systemverwaltungshandbuch. Der NULL-Teil der Spalten-Spezifikation gibt an, wie man bestimmte Eingabewerte als NULL-Werte beim Laden in die Tabellenspalte behandelt. Diese Zeichen können BLANKS, ZEROS oder jede andere Liste von Literalen, die Sie definieren, enthalten. Wenn Sie einen NULL-Wert angeben oder einen NULL-Wert aus der Quelldatei lesen, muss die Zielspalte NULLs enthalten. ZEROS werden wie folgt interpretiert: Die Zelle wird auf NULL gesetzt, wenn (und nur wenn) die Eingabedaten (vor der Umwandlung, wenn ASCII) alle binären Nullen (und nicht Zeichen-Nullen) sind. Wenn die Eingabedaten Zeichen Null sind, dann: NULL (ZEROS) verursacht niemals die Zelle NULL. NULL (0) bewirkt, dass die Zelle NULL ist. Wenn die Eingabedaten binär Null sind (alle Bits löschen), dann: NULL (ZEROS) bewirkt, dass die Zelle NULL ist. NULL (0) verursacht niemals die Zelle NULL. Zum Beispiel, wenn Ihre LOAD-Anweisung col1 date (yymmdd) null (Nullen) und das Datum 000000 enthält, erhalten Sie einen Fehler, der angibt, dass 000000 nicht in ein DATE (4) konvertiert werden kann. Um die Last zu laden, um einen NULL-Wert in col1 einzufügen, wenn die Daten 000000 sind, schreibe die NULL-Klausel als null (000000). Oder ändern Sie die Daten auf gleich binäre Nullen und verwenden Sie NULL (ZEROS). Wenn die Länge einer VARCHAR-Zelle Null ist und die Zelle nicht NULL ist, bekommt man eine Zelle mit null Länge. Für alle anderen Datentypen, wenn die Länge der Zelle Null ist, fügt Sybase IQ einen NULL ein. Das ist das ANSI-Verhalten. Für die Nicht-ANSI-Behandlung von Null-Länge-Zeichendaten legen Sie die Option NonAnsiNullVarchar-Datenbank fest. Ein weiterer wichtiger Teil der Last-Spezifikation ist die FILLER-Option. Es bedeutet, dass Sie über ein bestimmtes Feld in der Quell-Eingabedatei überspringen möchten. Zum Beispiel können Zeichen am Ende von Zeilen oder sogar ganze Felder in den Eingabedateien vorhanden sein, die Sie nicht zur Tabelle hinzufügen möchten. Wie bei der Spaltenspezifischen Definition können Sie mit FILLER die feste ASCII-Länge von Bytes, Variablenlängenzeichen, die durch einen Trennzeichen begrenzt sind, und Binärfelder mit PREFIX-Bytes angeben. Dateiname-String Der Dateiname-String wird als String an den Server übergeben. Der String unterliegt daher denselben Formatierungsanforderungen wie andere SQL-Strings. Insbesondere: Um Verzeichnispfade in Windows-Systemen anzugeben, muss das Backslash-Zeichen durch zwei Backslashs dargestellt werden. Daher ist die Anweisung zum Laden von Daten aus der Datei c: tempinput. dat in die Mitarbeiter-Tabelle: Der Pfadname bezieht sich auf den Datenbankserver, nicht auf die Client-Anwendung. Wenn Sie die Anweisung auf einem Datenbankserver auf einem anderen Computer ausführen, beziehen sich die Verzeichnisnamen auf Verzeichnisse auf dem Server, nicht auf dem Clientcomputer. Im Folgenden wird jede der Klauseln der Anweisung beschrieben: WORD SKIP Ermöglicht die Fortsetzung der Last, wenn sie länger als die bei der Erstellung des Wortindex angegebene Grenze auftritt. Wenn eine Zeile nicht geladen wird, weil ein Wort die maximal zulässige Größe überschreitet, wird eine Warnung in die. iqmsg-Datei geschrieben. WORD-Größenverletzungen können optional in der MESSAGE-LOG-Datei protokolliert und die in der LOAD TABLE-Anweisung angegebenen ROW-LOG-Datei abgelehnt werden. Wenn die Option nicht angegeben ist, meldet LOAD TABLE einen Fehler und rollt beim ersten Auftreten eines Wortes zurück, das länger als das angegebene Limit ist. Zahl gibt an, wie oft die Wörter, die die maximal zulässige Wortlänge überschreiten, nicht unterstützt Fehler ignoriert wird. 0 (Null) bedeutet, dass es keine Begrenzung gibt. QUOTEN Dieser Parameter ist optional und die Voreinstellung ist EIN. Wenn QUOTES eingeschaltet ist, erwartet LOAD TABLE, dass Input-Strings in Anführungszeichen eingeschlossen werden. Das Zitatzeichen ist entweder ein Apostroph (einfaches Zitat) oder ein Anführungszeichen (doppeltes Zitat). Der erste Charakter, der in einem String angetroffen wird, wird als Anführungszeichen für den String behandelt. String-Daten müssen mit einem passenden Angebot beendet werden. Mit QUOTEN AN. Spalten - oder Zeilenbegrenzerzeichen können in den Spaltenwert aufgenommen werden. Führende und beendende Anführungszeichen werden davon ausgegangen, dass sie nicht Teil des Wertes sind und vom geladenen Datenwert ausgeschlossen sind. Um ein Zitatzeichen in einen Wert mit QUOTES ON einzufügen. Benutze zwei Zitate. Beispielsweise enthält die folgende Zeile einen Wert in der dritten Spalte, der ein einziges Anführungszeichen ist: Bei eingeschaltetem STRIP (Standardeinstellung) werden nachfolgende Leerzeichen von Werten abgezogen, bevor sie eingefügt werden. Schleppende Leerzeichen werden nur für nicht zitierte Zeichenfolgen abgezogen. Zitierte Strings behalten ihre nachlaufenden Leerzeichen bei. Führende Leerzeichen oder TAB-Zeichen werden nur dann beschnitten, wenn die QUOTES-Einstellung eingeschaltet ist. Die Datenextraktionsanlage bietet Optionen zur Handhabung von Anführungszeichen (TEMPEXTRACTQUOTES, TEMPEXTRACTQUOTESALL und TEMPEXTRACTQUOTE). Wenn Sie planen, die extrahierte Datei mit Zeichenfolgenfeldern, die Spalten - oder Zeilenbegrenzer enthalten, unter Standard-ASCII-Extraktion zurückzuladen, verwenden Sie die Option TEMPEXTRACTBINARY für die Auszugs - und FORMAT-Binär - und QUOTEN-AUS-Optionen für LOAD TABLE. Die Option QUOTES ON gilt nur für spaltenbegrenzte ASCII-Felder. Mit QUOTEN AN. Das erste Zeichen eines Spaltenbegrenzers oder Reihenabschlusses kann kein einzelnes oder doppeltes Anführungszeichen sein. Die QUOTES-Option gilt nicht für das Laden von Binär-Großobjekt - (BLOB-) oder Zeichen-Großobjekt - (CLOB-) Daten aus der Sekundärdatei, unabhängig von ihrer Einstellung. Ein führendes oder nachlaufendes Angebot wird als Teil der CLOB-Daten geladen. Zwei aufeinander folgende Anführungszeichen zwischen umschließenden Anführungszeichen werden als zwei aufeinanderfolgende Anführungszeichen mit der Option QUOTES ON geladen. Adaptive Server Enterprise BCP unterstützt die Option QUOTES nicht. Alle Felddaten werden gleich oder gleich der QUOTES OFF-Einstellung kopiert. Da QUOTES ON die Standardeinstellung für die Sybase IQ LOAD TABLE-Anweisung ist, müssen Sie QUOTES OFF beim Import von ASE-Daten aus BCP-Ausgabe in eine Sybase IQ-Tabelle angeben. Wenn LOAD TABLE nach dem Ende des Anführungszeichens für ein eingeschlossenes Feld auf beliebige nicht weiße Zeichen trifft, wird der folgende Fehler gemeldet und der Ladevorgang wird zurückgesetzt: Nicht-SPACE-Text, der nach dem Ende des Anführungszeichens für ein eingeschlossenes Feld gefunden wurde. SQLSTATE: QTA14 SQLCODE: -1005014L Mit QUOTES ON. Wenn ein einzelnes oder doppeltes Anführungszeichen als erstes Zeichen des Spaltenbegrenzers angegeben ist, wird ein Fehler gemeldet und der Ladevorgang fehlschlägt: Einzelne oder doppelte Anführungszeichen können nicht das 1. Zeichen des Spaltenbegrenzers oder Zeilenabschlusses mit QUOTES-Option EIN sein. SQLSTATE: QCA90 SQLCODE: -1013090L CHECK CONSTRAINTS Diese Option ist standardmäßig auf ON gesetzt. Wenn Sie CHECK CONSTRAINTS ON angeben. Check-Constraints werden ausgewertet und du kannst sie frei ignorieren oder protokollieren. Einstellung CHECK CONSTRAINTS OFF bewirkt, dass Sybase IQ alle Check-Constraint-Verletzungen ignoriert. Dies kann z. B. beim Datenbankumbau nützlich sein. Wenn eine Tabelle Check-Constraints hat, die benutzerdefinierte Funktionen aufrufen, die noch nicht erstellt wurden, schlägt die Neuerstellung fehl, solange diese Option nicht auf OFF gesetzt ist. Diese Option schließt sich gegenseitig aus. Wenn eine dieser Optionen in derselben Last angegeben ist, ergibt sich ein Fehler: IGNORE CONSTRAINT ALL IGNORE CONSTRAINT CHECK DEFAULTS Wenn die Option DEFAULTS aktiviert ist (die Voreinstellung) und die Spalte einen Standardwert hat, wird dieser Wert verwendet. Wenn die Option DEFAULTS ausgeschaltet ist, wird jede Spalte, die nicht in der Spaltenliste vorhanden ist, NULL zugewiesen. Die Einstellung für die Option DEFAULTS gilt für alle Spalten-DEFAULT-Werte, einschließlich AUTOINCREMENT. Detaillierte Informationen zur Verwendung von Spalten-DEFAULT-Werten mit Lasten und Einsätzen finden Sie unter Verwenden von Spaltenvorgaben in Kapitel 9, Sicherstellen der Datenintegrität im Sybase IQ Systemverwaltungshandbuch. ESCAPES Wenn Sie eine Spaltenspezifische Definition für ein Eingabefeld auslassen und ESCAPES eingeschaltet ist (die Voreinstellung), werden Zeichen, die dem Backslash-Zeichen folgen, als Sonderzeichen vom Datenbankserver erkannt und interpretiert. Newline-Zeichen können als Kombination n aufgenommen werden, andere Zeichen können in Daten als hexadezimale ASCII-Codes, wie z. B. x09 für das Tab-Zeichen, aufgenommen werden. Eine Sequenz von zwei Backslash-Zeichen () wird als einziger Backslash interpretiert. Für Sybase IQ müssen Sie diese Option ausschalten. FORMAT Sybase IQ unterstützt ASCII - und Binäreingabefelder. Das Format wird in der Regel durch die oben beschriebene Spaltenspezifikation definiert. Wenn Sie diese Definition für eine Spalte weglassen, verwendet Sybase IQ standardmäßig das von dieser Option definierte Format. Input-Zeilen werden angenommen, dass ascii (die Standard-) oder Binärfelder, eine Zeile pro Zeile, mit Werten, die durch das Spaltenbegrenzungszeichen getrennt sind. DELIMITED BY Wenn Sie in der Spaltenspezifischen Definition ein Spaltentrennzeichen weglassen, ist das Standard-Spaltentrennzeichen ein Komma. Sie können einen alternativen Spaltenbegrenzer angeben, indem Sie ein einzelnes ASCII-Zeichen oder die hexadezimale Zeichendarstellung bereitstellen. Die DELIMITED BY-Klausel lautet wie folgt: Um das Newline-Zeichen als Trennzeichen zu verwenden, können Sie entweder die Sonderkombination n oder ihren ASCII-Wert x0a angeben. Obwohl Sie bis zu vier Zeichen in der Spalte-spec delimiter-string angeben können. Sie können in der DELIMITED BY-Klausel nur ein einzelnes Zeichen angeben. STRIP Bei eingeschaltetem STRIP (Standardeinstellung) werden nachfolgende Leerzeichen von Werten abgezogen, bevor sie eingefügt werden. Dies gilt nur für VARCHAR-Daten, die nicht für ASCII-Fixbreiten-Einsätze gilt. Um die STRIP-Option auszuschalten, ist die Klausel wie folgt: Schleppende Leerzeichen werden nur für nicht zitierte Zeichenfolgen abgezogen. Zitierte Strings behalten ihre nachlaufenden Leerzeichen bei. Alternativ können Sie mit der Option FILLER die Anzahl der Bytes, die anstelle aller nachlaufenden Leerzeichen streifen, spezifischer sein. Es ist effizienter für Sybase IQ, diese Option auszuschalten, und es haftet beim ANSI-Standard beim Umgang mit nachlaufenden Leerzeichen. (Char-Daten werden immer gepolstert, so dass diese Option nur die Varchar-Daten beeinflusst.) MIT CHECKPOINT Die Standardeinstellung ist OFF. Wenn auf ON gesetzt, wird nach erfolgreichem Abschluss und Protokollierung der Anweisung ein Checkpoint ausgegeben. Wenn WITH CHECKPOINT ON nicht angegeben ist und anschließend eine Wiederherstellung erforderlich ist, wird die zum Laden der Tabelle verwendete Datendatei benötigt, damit die Wiederherstellung erfolgreich abgeschlossen wird. Wenn WITH CHECKPOINT ON angegeben ist und die Wiederherstellung nachträglich erforderlich ist, beginnt sie nach dem Checkpoint und die Datendatei muss nicht vorhanden sein. BLOCK FACTOR Gibt den Sperrfaktor oder die Anzahl der Datensätze pro Block an, der bei der Erstellung eines Bandes verwendet wird. Diese Option gilt nicht für Einfügungen aus Eingabefeldern mit variabler Länge. Verwenden Sie stattdessen die Option BLOCKSIZE. Allerdings wirkt sich dies auf alle Dateieinsätze (einschließlich von Festplatte) mit festen Längen-Eingabefeldern aus und kann die Leistung drastisch beeinflussen. Sie können diese Option nicht zusammen mit der Option BLOCK SIZE angeben. Der Standardwert ist 10.000. BLOCK SIZE Gibt die Standardgröße in Bytes an, in denen die Eingabe gelesen werden soll. Diese Option wirkt sich nur auf die eingegebenen Daten der variablen Länge aus, die nicht für feste Längeneingabefelder gültig ist. Es ist ähnlich wie BLOCK FACTOR. Aber es gibt keine Beschränkungen für die Beziehung der Rekordgröße zu Blockgröße. Sie können diese Option nicht zusammen mit der Option BLOCK FACTOR angeben. Die Voreinstellung ist 500.000. BYTE ORDER Gibt die Byte-Reihenfolge während der Lesevorgänge an. Diese Option gilt für alle binären Eingabefelder. Wenn keine definiert ist, wird diese Option ignoriert. Sybase IQ liest immer Binärdaten im Format nativ auf die Maschine, auf der es läuft (Standard ist NATIVE). Sie können auch angeben: HIGH, wenn Multibyte-Mengen das High-Order-Byte zuerst haben (für Big-Endian-Plattformen wie Sun, IBM AIX und HP). LOW, wenn Multibyte-Mengen das niedrige Order-Byte zuerst haben (für kleine Endian-Plattformen wie Windows). LIMIT Gibt die maximale Anzahl von Zeilen an, die in die Tabelle eingefügt werden sollen. Die Voreinstellung ist 0 für kein Limit. Das Maximum ist 2GB - 1. NOTIFY Gibt an, dass Sie jedes Mal mit einer Nachricht benachrichtigt werden, wenn die angegebene Anzahl von Zeilen erfolgreich in die Tabelle eingefügt wurde. Die Voreinstellung ist jede 100.000 Zeilen. Der Wert dieser Option überschreibt den Wert der NOTIFYMODULUS-Datenbankoption. ON FILE ERROR Gibt die Aktion an, die Sybase IQ annimmt, wenn eine Eingabedatei nicht geöffnet werden kann, da sie nicht existiert oder Sie falsche Berechtigungen zum Lesen der Datei haben. Sie können eine der folgenden Optionen angeben: ROLLBACK bricht die gesamte Transaktion ab (die Voreinstellung). FINISH beendet die bereits abgeschlossenen Einfügungen und beendet den Ladevorgang. CONTINUE gibt einen Fehler zurück, überspringt aber nur die Datei, um den Ladevorgang fortzusetzen. Sie können diese Option nicht mit Teilbreiteneinsätzen verwenden. Es ist nur eine ON FILE ERROR-Klausel zulässig. PREVIEW Zeigt das Layout der Eingabe in die Zieltabelle einschließlich Startposition, Name und Datentyp jeder Spalte an. Sybase IQ zeigt diese Informationen zu Beginn des Ladevorgangs an. Wenn Sie in eine Protokolldatei schreiben, sind diese Informationen auch im Protokoll enthalten. Diese Option ist besonders bei Teilbreiteneinsätzen sinnvoll. ROW DELIMITED BY Gibt einen String mit einer Länge von bis zu 4 Bytes an, der das Ende eines Eingabesatzes anzeigt. Sie können diese Option nur verwenden, wenn alle Felder innerhalb der Zeile eine der folgenden sind: Abgegrenzt mit Spaltenabschlüssen Daten, die durch die DATE - oder DATETIME-Spalten-Spezifizierungsoptionen definiert sind ASCII-feste Längenfelder Sie können diese Option nicht verwenden, wenn alle Eingabefelder binäre Daten enthalten. Mit dieser Option bewirkt ein Zeilenende, dass fehlende Felder auf NULL gesetzt werden. Alle Zeilen müssen die gleichen Zeilenbegrenzer haben, und sie müssen sich von allen Spaltenbegrenzern unterscheiden. Die Zeilen - und Feldbegrenzungszeichenfolgen können keine Anfangssatzung voneinander sein. Zum Beispiel können Sie nicht als Feldbegrenzer und als Zeilenbegrenzer angeben, aber Sie können als Feldbegrenzer mit diesem Zeilenbegrenzer angeben. Wenn eine Zeile ihre Trennzeichen fehlt, gibt Sybase IQ einen Fehler zurück und rollt die gesamte Lasttransaktion zurück. Die einzige Ausnahme ist die endgültige Aufzeichnung einer Datei, in der sie diese Zeile zurücksetzt und eine Warnmeldung zurückgibt. Unter Windows wird ein Zeilenbegrenzer in der Regel durch das Zeilenumbruchzeichen gefolgt von dem Wagenrücklaufzeichen angezeigt. Möglicherweise müssen Sie dies als Trennzeichen-String (siehe oben für Beschreibung) für diese Option oder FILLER angeben. SKIP Hier können Sie eine Anzahl von Zeilen definieren, die zu Beginn der Eingabetabellen für diese Last übersprungen werden sollen. Die Voreinstellung ist 0. START ROW ID Gibt die Datensatz-Identifikationsnummer einer Zeile in der Sybase IQ-Tabelle an, wo sie mit dem Einfügen beginnen soll. Diese Option wird für Teilbreiteneinsätze verwendet, die Einsätze in eine Teilmenge der Spalten in der Tabelle sind. Standardmäßig werden neue Zeilen eingefügt, wo Platz in der Tabelle vorhanden ist, und jeder Eintrag startet eine neue Zeile. Partial-Breite-Einsätze müssen in einer vorhandenen Zeile beginnen. Sie müssen auch Daten aus der Quelldatei in die Zieltabelle punktuell nach Spalte einfügen, also müssen Sie die Zielspalten in der gleichen Reihenfolge wie ihre entsprechenden Quellspalten angeben. Definieren Sie das Format jeder Eingabespalte mit einer Spaltenspezifikation. Die Standardeinstellung ist 0. Weitere Informationen zu Einsätzen der Teilbreite finden Sie in Kapitel 7, Verschieben von Daten in und aus Datenbanken im Sybase IQ Systemverwaltungshandbuch. Verwenden Sie die Option START ROW ID nur für Teilbreiteneinsätze. Wenn die zu ladenden Spalten bereits Daten enthalten, schlägt die Einfügung fehl. UNLOAD FORMAT Gibt an, dass die Datei Sybase IQ interne Entladeformate für jede Spalte hat, die von einer früheren Version von Sybase IQ (vor Version 12.0) erstellt wurde. Diese Lastoption hat folgende Einschränkungen: Sie können keine Spaltenspezifikation (wie ASCII oder PREFIX) für eine andere Spalte als BINARY angeben. Dazu gehören die NULL-Spezifikationen. Wenn Sie mit der BINARY-Spaltenspezifikation Nullwerte für eine Spalte laden müssen. Sie müssen das Schlüsselwort WITH NULL BYTE angeben oder Sybase IQ gibt einen Fehler zurück. Sie können die DELIMITED BY oder ROW DELIMITED BY nicht mit UNLOAD FORMAT verwenden. ON PARTIAL INPUT ROW Gibt die Aktion an, die ausgeführt werden soll, wenn eine Teileingangszeile während einer Last angetroffen wird. Sie können eine der folgenden Optionen angeben: WEITER gibt eine Warnung aus und setzt den Ladevorgang fort. Dies ist die Voreinstellung. ROLLBACK bricht den gesamten Ladevorgang ab und meldet den Fehler. Teileingabeaufzeichnung bei EOF übersprungen. SQLSTATE: QDC32 SQLSTATE: -1000232L IGNORE CONSTRAINT Gibt an, ob die CHECK-, UNIQUE-, NULL-, DATA-VALUE - und FOREIGN-KEY-Integritätseinschränkungsverletzungen, die während einer Last auftreten, und die maximale Anzahl von Verstößen ignoriert werden, bevor ein Rollback eingeleitet wird. Die Angabe jedes Constrainttyps hat folgendes Ergebnis: CHECK-Limit Wenn Limit Null angibt, ist die Anzahl der UNIQUE Constraint-Verstöße, die ignoriert werden sollen, unendlich. Wenn CHECK nicht angegeben ist, führt das erste Auftreten einer CHECK-Einschränkungsverletzung dazu, dass die LOAD-Anweisung zurück rollt. Wenn die Grenze ungleich Null ist, führt das Limit 1-Auftreten einer CHECK-Einschränkungsverletzung dazu, dass die Last zurück rollt. EINZIGARTIGE Grenze Wenn Limit Null angibt, dann ist die Anzahl der UNIQUE Constraint-Verletzungen zu ignorieren unendlich. Wenn das Limit ungleich Null ist, führt das Limit 1-Auftreten einer UNIQUE Constraint-Verletzung dazu, dass die Last zurück rollt. NULL-Grenzwert Wenn Limit Null angibt, ist die Anzahl der zu ignorierenden NULL-Einschränkungsverletzungen unendlich. Wenn das Limit ungleich Null ist, führt das Limit 1-Auftreten einer NULL-Einschränkungsverletzung dazu, dass die Last zurück rollt. FOREIGN KEY-Limit Wenn Limit Null angibt, ist die Anzahl von FOREIGN KEY-Constraint-Verletzungen zu ignorieren unendlich. Wenn die Grenze null ist, führt das Limit 1-Auftreten einer FOREIGN KEY-Einschränkungsverletzung dazu, dass die Last zurück rollt. DATA VALUE-Limit Wenn die Datenbank-Option CONVERSIONERROR ON ist, wird ein Fehler gemeldet und die Anweisung rollt zurück. Wenn Limit Null angibt, dann ist die Anzahl der DATA VALUE-Constraint-Verletzungen (Datentyp-Umwandlungsfehler) zu ignorieren unendlich. Wenn die Grenze ungleich Null ist, führt das Limit 1-Auftreten einer DATA VALUE-Einschränkungsverletzung dazu, dass die Last zurück rollt. ALL-Limit Wenn die Datenbank-Option CONVERSIONERROR ON. Ein Fehler wird gemeldet und die Anweisung rollt zurück. Wenn Limit Null angibt, dann ist die kumulative Summe aller Integritätsbeschränkungsverletzungen, die ignoriert werden, unendlich. Wenn die Grenze ungleich Null ist, rollt die Ladung zurück, wenn die kumulative Summe aller ignorierten UniVUE-, NULL-, DATA VALUE - und FOREIGN-KEY-Integritäts-Constraint-Verletzungen den Grenzwert überschreitet. Beispielsweise geben Sie die folgende IGNORE CONSTRAINT-Option an: Die Gesamtzahl der Integritätseinschränkungsverletzungen darf 200 nicht überschreiten, während die Gesamtzahl der NULL - und UNIQUE-Constraint-Verletzungen 50 bzw. 100 nicht überschreiten darf. Wenn eine dieser Grenzwerte überschritten wird, rollt die LOAD TABLE-Anweisung zurück. Eine einzelne Zeile kann mehr als eine Integritätsbeschränkungsverletzung haben. Jedes Vorkommen einer Integritätsbeschränkungsverletzung zählt zu der Grenze dieser Art von Verletzung. Sybase empfiehlt dringend, das IGNORE CONSTRAINT-Optionslimit auf einen Wert ungleich Null zu setzen, wenn Sie die ignorierten Integritätseinschränkungsverletzungen protokollieren. Die Protokollierung einer übermäßigen Anzahl von Verstößen wirkt sich auf die Leistung der Last aus. Wenn CHECK, UNIQUE, NULL oder FOREIGN KEY in der IGNORE CONSTRAINT-Klausel nicht angegeben ist, rollt die Last beim ersten Auftreten jeder dieser Arten von Integritätsbeschränkungsverletzungen zurück. Wenn DATA VALUE in der IGNORE CONSTRAINT-Klausel nicht angegeben ist, rollt die Last beim ersten Auftreten dieser Art von Integritätseinschränkungsverletzung zurück, es sei denn, die Datenbankoption CONVERSIONERROR OFF. Wenn CONVERSIONERROR AUS ist. Eine Warnung wird für jede DATA VALUE-Einschränkungsverletzung gemeldet und die Last wird fortgesetzt. Wenn die Last abgeschlossen ist, wird eine Informationsnachricht bezüglich Integritätsbeschränkungsverletzungen in der. qq-Datei protokolliert. Diese Nachricht enthält die Anzahl der Integritätsbeschränkungsverletzungen, die während der Ladung aufgetreten sind, und die Anzahl der übersprungenen Zeilen. MESSAGE LOG Gibt die Namen von Dateien an, in denen Informationen über Integritätsbeschränkungen und die Arten von Verletzungen protokolliert werden sollen. Zeitstempel, die den Start und die Beendigung der Last angeben, werden sowohl im MESSAGE LOG als auch in den ROW LOG Dateien protokolliert. Es müssen sowohl MESSAGE LOG als auch ROW LOG angegeben werden oder es werden keine Informationen über Integritätsverletzungen protokolliert. Wenn die NUR LOG-Klausel nicht angegeben ist, werden keine Informationen über Integritätsbeschränkungsverletzungen protokolliert. Nur die Zeitstempel, die den Start und die Beendigung der Last angeben, werden protokolliert. Informationen werden bei allen in der ONLY-LOG-Klausel festgelegten Integritäts-Constraint-Typ-Verletzungen oder bei allen Wortindex-Längen-Verstößen protokolliert, wenn das Schlüsselwort WORD angegeben ist. Wenn Constraint-Verstöße protokolliert werden, erzeugt jedes Vorkommen einer Integritäts-Constraint-Verletzung genau eine Zeile von Informationen in der MESSAGE LOG-Datei. Die Anzahl der Zeilen (Fehler gemeldet) in der MESSAGE LOG-Datei kann die Optionsgrenze von IGNORE CONSTRAINT überschreiten, da die Last von mehreren parallel laufenden Threads ausgeführt wird. Mehr als ein Thread könnte berichten, dass die Anzahl der Constraint-Verstöße das angegebene Limit überschritten hat. Wenn Constraint-Verstöße protokolliert werden, wird genau eine Zeile von Informationen in der ROW-LOG-Datei für eine gegebene Zeile protokolliert, unabhängig von der Anzahl der Integritäts-Constraint-Verletzungen, die in dieser Zeile auftreten. Die Anzahl der verschiedenen Fehler in der MESSAGE LOG-Datei stimmt möglicherweise nicht genau mit der Anzahl der Zeilen in der ROW LOG-Datei überein. Der Unterschied in der Anzahl der Zeilen ist auf die Parallelverarbeitung der oben beschriebenen Last für das MESSAGE LOG zurückzuführen. Die MESSAGE LOG - und ROW-LOG-Dateien können keine rohen Partitionen sein. Wenn die MESSAGE LOG oder ROW LOG Datei bereits vorhanden ist, werden neue Informationen an die Datei angehängt. Die Angabe eines ungültigen Dateinamens für die MESSAGE LOG - oder ROW LOG-Datei erzeugt einen Fehler. Die Angabe des gleichen Dateinamens für die MESSAGE LOG und ROW LOG Dateien erzeugt einen Fehler. Verschiedene Kombinationen der Optionen IGNORE CONSTRAINT und MESSAGE LOG führen zu unterschiedlichen Protokollierungsaktionen, wie in Tabelle 6-11 angegeben. Tabelle 6-11: LOAD TABLE Logging Aktionen IGNORE CONSTRAINT angegeben Nichts wird protokolliert. Die erste Integritätsbeschränkungsverletzung verursacht einen Rollback. Sybase empfiehlt dringend, das IGNORE CONSTRAINT-Optionslimit auf einen Wert ungleich Null zu setzen, wenn Sie die ignorierten Integritätseinschränkungsverletzungen protokollieren. Wenn eine einzelne Zeile mehr als eine Integritätsbeschränkungsverletzung hat, wird eine Zeile für jede Verletzung in die MESSAGE LOG-Datei geschrieben. Die Protokollierung einer übermäßigen Anzahl von Verstößen wirkt sich auf die Leistung der Last aus. LOG DELIMITED BY Gibt den Trennzeichen zwischen Datenwerten in der ROW LOG-Datei an. Der Standard-Trennzeichen ist ein Komma. Side effects SQL92 Vendor extension. Sybase Not applicable. Permissions The permissions required to execute a LOAD TABLE statement depend on the database server - gl command line option, as follows: If the - gl option is set to ALL, you must be the owner of the table, have DBA authority, or have ALTER permission. If the - gl option is set to DBA, you must have DBA authority. If the - gl option is set to NONE, LOAD TABLE is not permitted. LOAD TABLE also requires an exclusive lock on the table.

No comments:

Post a Comment