Erstellen Sie eine große SQL-Anweisung und fügen Sie sie in wer(A1,A2...A1000) Werte(@a1,@a2,...@a1000) ein. Es enthält 1000 Parameter. Weisen Sie dem Parameterarray einfach in einer Schleife Werte zu und führen Sie es dann aus.
Sie können eine Schleife verwenden, um diese Zeichenfolge zu generieren
string Sql,param;
Sql="";param="";
for(int i=1;i{
Sql+="A"+i.ToString()+",";
param+="@a"+i.ToString()+",";
}
Sql="Einfügen in wer("+Sql.Substring(0,Sql.Length-1)+") Werte ("+param.Substring(0,param.Length-1));
Weisen Sie dem Parameterarray dieser SQL einen Wert zu und führen Sie dann diese SQL aus;
Aber ich erinnere mich, dass unter 2000 die maximale Länge eines einzelnen SQL-Befehls 4 KB betrug (ich erinnere mich nicht genau, Sie können es selbst versuchen, wenn Sie nur die Feldnamen schreiben, werden 4 KB überschritten).
Wenn die SQL-Anweisung zu häufig ist, müssen Sie sie in zwei Teile aufteilen, eine einfügen und eine ID zurückgeben und dann entsprechend der zweiten aktualisieren, oder Sie können einfach eine ID in den Parameter einfügen.
deklarieren
--Definieren Sie den Typ IntArray, bei dem es sich um ein Array handelt, in dem jedes Element vom Typ int ist
Type IntArray ist eine Tabelle von int;
--Definieren Sie eine Variable vom Typ IntArray
v_array IntArray := IntArray();
beginnen
--Speichern von Daten im Array
für mich in 1.. 100er-Schleife
--Array muss erweitert werden
v_array.extend;
v_array(i) := i;
Endschleife;
--Gib den Inhalt des Arrays aus
für mich in 1.. 100er-Schleife
dbms_output.put_line(v_array(i));
Endschleife;
Ende;
SQL>serverout aktivieren;
SQL>deklarieren
2 – Definieren Sie den Typ IntArray, bei dem es sich um ein Array handelt, in dem jedes Element vom Typ int ist
3 Typ IntArray ist eine Tabelle von int;
4 – Definieren Sie eine Variable vom Typ IntArray
5 v_array IntArray := IntArray();
6 beginnen
7 – Daten im Array speichern
8 für i in 1.. 100 Schleife
9 – Array muss erweitert werden
10 v_array.extend;
11 v_array(i) := i;
12 Endschleife;
13
14 – Gibt den Inhalt des Arrays aus
15 für i in 1.. 100er-Schleife
16 dbms_output.put_line(v_array(i));
17 Endschleife;
18 Ende;
19/
1
2
3
4
5
6
7
8
9
10
90 Zeilen werden hier weggelassen
PL/SQL-Verfahren erfolgreich abgeschlossen
SQL>
öffentliche Klasse ddd {
public static void main(String args[]){
String driversClass="com.mysql.jdbc.Driver";
String url="jdbc:mysql://localhost:3306/find";//Datenbankname finden
String user="root";//
String passwort="root";//MYSQL
Verbindungsverbindung;
versuchen {
Class.forName(driverClass).newInstance(); conn=DriverManager.getConnection(url,user,password);
Statement stmt=conn.createStatement();
int i=0;
String a[]={"sad","dsds","dsfss"};
String sql="in XX Werte einfügen (null,'"+a[i]+"')";
for(i=0;i
int rs=stmt.executeUpdate(sql);
}catch(Exception ex){
ex.printStackTrace();
}
}
Erstellen Sie eine Tabelle mit zwei Spalten, ID und Wort-ID-Einstellung erfolgt automatisch
Wenn Sie Fragen haben, kontaktieren Sie mich bitte.
Das obige ist der detaillierte Inhalt vonSo geben Sie Daten mithilfe von Arrays in eine SQL-Datenbank ein. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!