Heim >Datenbank >MySQL-Tutorial >Was ist der Unterschied zwischen den Methoden setBlob() und setBinaryStream() und welche davon ist in JDBC vorzuziehen?

Was ist der Unterschied zwischen den Methoden setBlob() und setBinaryStream() und welche davon ist in JDBC vorzuziehen?

王林
王林nach vorne
2023-09-02 08:53:021143Durchsuche

Die Methode

setBlob() 和 setBinaryStream() 方法之间有什么区别,哪个在 JDBC 中更可取?

setBlob() wird verwendet, um den Wert des Blob-Datentyps in der Datenbank festzulegen. Es gibt drei Varianten wie folgt:

  • void setBlob(int parameterIndex, Blob x): Legen Sie den angegebenen Blob-Wert als Parameter fest.

  • void setBlob(int parameterIndex, InputStream inputStream): Legt den Inhalt fest des angegebenen Eingabestreams auf den Wert des Parameters am angegebenen Index.

  • void setBlob(int parameterIndex, InputStream inputStream, long length): Setzt den Inhalt des angegebenen Eingabestreams auf den Parameter mit einem Wert bis zum angegebenen Index. Die Methode

setBinaryStream() wird verwendet, um den Inhalt des angegebenen InputStream auf den Parameter am angegebenen Index zu setzen. Es gibt drei Varianten wie folgt:

  • void setBinaryStream(int parameterIndex, InputStream x): Setzt den Inhalt des angegebenen Eingabestreams auf den Wert des Parameters am angegebenen Index.

  • void setBinaryStream(intparameterIndex, InputStream x, int length): ): Setzt den angegebenen Eingabestream (der die angegebene Anzahl von Bytes haben wird) als Wert des Parameters am angegebenen Index.

  • void setBinaryStream(int parameterIndex, InputStream x, long length): Setzen Sie den Inhalt des angegebenen Eingabestreams (der die angegebene Anzahl von Bytes haben wird) auf den Wert des Parameters am angegebenen Index.

Der Hauptunterschied zwischen diesen beiden Methoden besteht darin, dass die Methode setBlob() dem Treiber mitteilt, dass der Parameterwert als BLOB-Datentyp an den Server gesendet werden soll.

Wie bei der Methode setBinaryStream() bestimmt der Treiber zunächst, in welchem ​​Format der Wert gesendet werden soll (LONGVARBINARY oder BLOB) und sendet ihn dann an den Server.

Das obige ist der detaillierte Inhalt vonWas ist der Unterschied zwischen den Methoden setBlob() und setBinaryStream() und welche davon ist in JDBC vorzuziehen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:tutorialspoint.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen