Python PostgreSQL - Masukkan Data
Anda dapat memasukkan record ke dalam tabel yang ada di PostgreSQL menggunakan INSERT INTOpernyataan. Saat menjalankan ini, Anda perlu menentukan nama tabel, dan nilai untuk kolom di dalamnya.
Sintaksis
Berikut ini adalah sintaks yang direkomendasikan dari pernyataan INSERT -
INSERT INTO TABLE_NAME (column1, column2, column3,...columnN)
VALUES (value1, value2, value3,...valueN);
Di mana, kolom1, kolom2, kolom3, .. adalah nama-nama kolom dari tabel, dan nilai1, nilai2, nilai3, ... adalah nilai yang perlu Anda masukkan ke dalam tabel.
Contoh
Asumsikan kita telah membuat tabel dengan nama CRICKETERS menggunakan pernyataan CREATE TABLE seperti yang ditunjukkan di bawah ini -
postgres=# CREATE TABLE CRICKETERS (
First_Name VARCHAR(255),
Last_Name VARCHAR(255),
Age INT,
Place_Of_Birth VARCHAR(255),
Country VARCHAR(255)
);
CREATE TABLE
postgres=#
Mengikuti pernyataan PostgreSQL menyisipkan baris di tabel yang dibuat di atas -
postgres=# insert into CRICKETERS
(First_Name, Last_Name, Age, Place_Of_Birth, Country) values
('Shikhar', 'Dhawan', 33, 'Delhi', 'India');
INSERT 0 1
postgres=#
Saat memasukkan record menggunakan pernyataan INSERT INTO, jika Anda melewatkan nama kolom Record akan disisipkan meninggalkan ruang kosong di kolom yang telah Anda lewati.
postgres=# insert into CRICKETERS
(First_Name, Last_Name, Country) values('Jonathan', 'Trott', 'SouthAfrica');
INSERT 0 1
Anda juga dapat menyisipkan rekaman ke dalam tabel tanpa menentukan nama kolom, jika urutan nilai yang Anda teruskan sama dengan masing-masing nama kolom dalam tabel.
postgres=# insert into CRICKETERS values('Kumara', 'Sangakkara', 41, 'Matale', 'Srilanka');
INSERT 0 1
postgres=# insert into CRICKETERS values('Virat', 'Kohli', 30, 'Delhi', 'India');
INSERT 0 1
postgres=# insert into CRICKETERS values('Rohit', 'Sharma', 32, 'Nagpur', 'India');
INSERT 0 1
postgres=#
Setelah memasukkan record ke dalam tabel, Anda dapat memverifikasi isinya menggunakan pernyataan SELECT seperti yang ditunjukkan di bawah ini -
postgres=# SELECT * from CRICKETERS;
first_name | last_name | age | place_of_birth | country
------------+------------+-----+----------------+-------------
Shikhar | Dhawan | 33 | Delhi | India
Jonathan | Trott | | | SouthAfrica
Kumara | Sangakkara | 41 | Matale | Srilanka
Virat | Kohli | 30 | Delhi | India
Rohit | Sharma | 32 | Nagpur | India
(5 rows)
Memasukkan Data Menggunakan Python
Kelas kursor psycopg2 menyediakan metode dengan metode nama execute (). Metode ini menerima kueri sebagai parameter dan menjalankannya.
Oleh karena itu, untuk memasukkan data ke dalam tabel di PostgreSQL menggunakan python -
Impor psycopg2 paket.
Buat objek koneksi menggunakan connect() metode, dengan meneruskan nama pengguna, kata sandi, host (opsional default: localhost) dan, database (opsional) sebagai parameter untuk itu.
Matikan mode komit otomatis dengan menyetel false sebagai nilai ke atribut autocommit.
Itu cursor() metode dari Connectionkelas pustaka psycopg2 mengembalikan objek kursor. Buat objek kursor menggunakan metode ini ..
Kemudian, jalankan pernyataan INSERT dengan meneruskannya sebagai parameter ke metode execute ().
Contoh
Mengikuti program Python membuat tabel dengan nama EMPLOYEE di database PostgreSQL dan memasukkan catatan ke dalamnya menggunakan metode execute () -
import psycopg2
#Establishing the connection
conn = psycopg2.connect(
database="mydb", user='postgres', password='password', host='127.0.0.1', port= '5432'
)
#Setting auto commit false
conn.autocommit = True
#Creating a cursor object using the cursor() method
cursor = conn.cursor()
# Preparing SQL queries to INSERT a record into the database.
cursor.execute('''INSERT INTO EMPLOYEE(FIRST_NAME, LAST_NAME, AGE, SEX, INCOME)
VALUES ('Ramya', 'Rama priya', 27, 'F', 9000)''')
cursor.execute('''INSERT INTO EMPLOYEE(FIRST_NAME, LAST_NAME, AGE, SEX, INCOME)
VALUES ('Vinay', 'Battacharya', 20, 'M', 6000)''')
cursor.execute('''INSERT INTO EMPLOYEE(FIRST_NAME, LAST_NAME, AGE, SEX, INCOME)
VALUES ('Sharukh', 'Sheik', 25, 'M', 8300)''')
cursor.execute('''INSERT INTO EMPLOYEE(FIRST_NAME, LAST_NAME, AGE, SEX, INCOME)
VALUES ('Sarmista', 'Sharma', 26, 'F', 10000)''')
cursor.execute('''INSERT INTO EMPLOYEE(FIRST_NAME, LAST_NAME, AGE, SEX, INCOME)
VALUES ('Tripthi', 'Mishra', 24, 'F', 6000)''')
# Commit your changes in the database
conn.commit()
print("Records inserted........")
# Closing the connection
conn.close()
Keluaran
Records inserted........