Oracle
 sql >> база данни >  >> RDS >> Oracle

Как мога да направя пакетно вмъкване в база данни на Oracle с помощта на Python?

Ето какво измислих, което изглежда работи добре (но моля, коментирайте, ако има начин да се подобри това):

# build rows for each date and add to a list of rows we'll use to insert as a batch 
rows = [] 
numberOfYears = endYear - startYear + 1
for i in range(numberOfYears):
    for j in range(12):
        # make a date for the first day of the month
        dateValue = datetime.date(startYear + i, j + 1, 1)
        index = (i * 12) + j
        row = (stationId, dateValue, temps[index], precips[index])
        rows.append(row)

# insert all of the rows as a batch and commit
ip = '192.1.2.3' 
port = 1521
SID = 'my_sid'
dsn = cx_Oracle.makedsn(ip, port, SID)
connection = cx_Oracle.connect('username', 'password', dsn)
cursor = cx_Oracle.Cursor(connection)
cursor.prepare('insert into ' + database_table_name + ' (id, record_date, temp, precip) values (:1, :2, :3, :4)')
cursor.executemany(None, rows)
connection.commit()
cursor.close()
connection.close()


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как мога да разбера дали имам необвързана работа в транзакция на Oracle?

  2. Как да форматирате месеца с римски цифри в Oracle

  3. Автоматично увеличаване в оракул към вече създадена таблица

  4. показване на персонализиран sql текст от резултата от колоната на таблицата

  5. Oracle Комбинирайте няколко колони в една