sql >> Database >  >> RDS >> Oracle

Gegevensset invoegen in Oracle-tabel

Stel dat je een verzameling rijen wilt doorlopen en je wilt ze allemaal invoegen, dan zou ik het proberen met een pseudocode als deze.

string cmdText = "INSERT INTO MY_INSERT_TEST(Col1, Col2, Col3) VALUES(?, ?, ?)";
using(OdbcConnection cn = getDBConnection())
using(OdbcCommand cmd = new OdbcCommand(cmdText, cn))
{
    cn.Open();
    cmd.Parameters.AddWithValue("@p1", "");
    cmd.Parameters.AddWithValue("@p2", "");
    cmd.Parameters.AddWithValue("@p3", "");
    foreach(DataRow r in dt.Rows)
    {
         cmd.Parameters["@p1"].Value =  r["Column3"].ToString());
         cmd.Parameters["@p2"].Value =  r["Column1"].ToString());
         cmd.Parameters["@p3"].Value =  r["Column2"].ToString());
         cmd.ExecuteNonQuery();
    }
}

Bouw een geparametriseerde query, definieer de parameters (hier zijn alle parameters van het stringtype, deze moeten worden gecontroleerd) en loop dan door de rijen van de datatabel en wijs de parameterwaarde toe uit de corresponderende kolom. Merk op dat u in de opdrachttekst niet rechtstreeks de waarden schrijft, maar een tijdelijke aanduiding plaatst voor de werkelijke waarde die u in de lus gaat invoeren.




  1. Hoe kan ik cPanel gebruiken om php-bestanden en database te uploaden?

  2. Wat is de beste manier om datum en tijd op te slaan in MySQL?

  3. integriteitsbeperking (...) geschonden - onderliggende record gevonden, Java, Oracle, Hibernate

  4. MySQL:sql_mode permanent instellen