درج داده در PostgreSQL با پایتون

  • مدرس: علی بیگدلی
  • تاریخ انتشار: 1402/05/05
  • تعداد بازدید: 271

درج داده

با استفاده از دستور INSERT INTO می توانید رکورد را در جدول موجود در PostgreSQL وارد کنید. در حین اجرای این مورد ، باید نام جدول و مقادیر ستون های موجود در آن را مشخص کنید.
در زیر نمونه ای از نحو انجام دستور INSERT آمده است:

INSERT INTO TABLE_NAME (column1, column2, column3,...columnN)
	VALUES (value1, value2, value3,...valueN);	

جایی که ستون 1 ، ستون 2 ، ستون 3 ، .. نام ستون های یک جدول هستند ، و مقدار 1 ، مقدار 2 ، مقدار 3 ، ... مقادیری است که شما باید در جدول وارد کنید.

نکته: توجه داشته باشید که می توانید در صورت دانستن مقادیر و جایگاه هایشان بدون اسم بردن از ستون ها تمام مقادیر را نیز به یک باره درج نمایید.

درج داده با استفاده از پایتون

کلاس مکان نما از psycopg2 متدی با نام execute() را اجرا می کند. این روش query را به عنوان یک پارامتر می پذیرد و آن را اجرا می کند.

بنابراین ، برای قرار دادن داده ها در جدول در PostgreSQL با استفاده از پایتون به مراحل زیر نیاز است:

  • ماژول psycopg2 را وارد کنید.
  • با استفاده از روش connect() ، با عبور از نام کاربر ، رمز عبور ، میزبان (پیش فرض اختیاری: localhost) و پایگاه داده (اختیاری) به عنوان پارامترهای آن ، یک شی object اتصال ایجاد کنید.
  • با تنظیم false به عنوان مقدار auto-commit ، حالت autocommit خودکار را خاموش کنید.
  • روش cursor () کلاس اتصال کتابخانه psycopg2 یک شی مکان نما را برمی گرداند. با استفاده از این روش یک مکان نما ایجاد کنید.
  • سپس ، دستورات (ها) INSERT را با عبور دادن آن ها به عنوان یک پارامتر به execute() ، اجرا کنید.

مثال

به دنبال برنامه Python جدولی با نام EMPLOYEE در پایگاه داده PostgreSQL ایجاد می کند و با استفاده از روش () 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 = False

# 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()

 خروجی:

Records inserted........