ایجاد ارتباط با پایگاه داده Postgresql

  • مدرس: علی بیگدلی
  • تاریخ انتشار: Feb 10, 2021

اتصال پایگاه داده

PostgreSQL محیط فرمان خاص خود را برای اجرای نمایش داده می شود. برای ایجاد ارتباط با پایگاه داده PostgreSQL ، مطمئن شوید که آن را به درستی در سیستم خود نصب کرده اید. خط فرمان PostgreSQL را باز کرده و جزئیاتی مانند سرور ، پایگاه داده ، نام کاربری و رمز عبور را منتقل کنید. اگر تمام جزئیات ارائه شده شما مناسب باشد ، با پایگاه داده PostgreSQL ارتباط برقرار می شود.

اما در این آموزش قرار است که این ارتباط از طریق پایتون برقرار شود و میبایست مانند دیگر پایگاه های داده که روندی مشخص برای اتصال داشته اند، برای این پایگاه داده نیز روندی را ایجاد نماییم.

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

کلاس اتصال psycopg2 نمونه ای از اتصال را برای  نمایش و یا مدیریت پایگاه داده ارائه می کند. با استفاده از تابع connect () می توانید اتصالات جدید ایجاد کنید. که پارامترهای اساسی اتصال مانند نام پایگاده داده، کاربر ، رمز عبور ، میزبان و پورت را می پذیرد و یک شی اتصال را برمی گرداند. با استفاده از این عملکرد می توانید با PostgreSQL ارتباط برقرار کنید.

کد پایتون زیر نحوه اتصال به یک پایگاه داده موجود را نشان می دهد. اگر پایگاه داده وجود داشته باشد ، ایجاد می شود و در نهایت یک شی پایگاه داده بازگردانده می شود. نام پایگاه داده پیش فرض postrgre است. بنابراین ، ما آن را به عنوان نام پایگاه داده ارائه می دهیم.

import psycopg2

#establishing the connection
conn = psycopg2.connect(database="postgres",user='postgres',password='password', host='127.0.0.1', port= '5432')
#Creating a cursor object using the cursor() method
cursor = conn.cursor()

#Executing a postgresql function using the execute() method
cursor.execute("select version()")

# Fetch a single row using fetchone() method.
data = cursor.fetchone()
print("Connection established to: ",data)

#Closing the connection
conn.close()

خروجی:

Connection established to:  ('PostgreSQL 13.1 (Ubuntu 13.1-1.pgdg18.04+1) on x86_64-pc-linux-gnu, compiled by gcc (Ubuntu 7.5.0-3ubuntu1~18.04) 7.5.0, 64-bit',)

نکته: خروجی بالا بستگی به این خواهد داشت که سرور PostgresSQL شما در چه محیطی نصب و در حال اجرا باشد.

ثبت دیدگاه
نام *
ایمیل*
دیدگاه *
2دیدگاه
  • Tahpro Grammer
    8 months ago

    سلام مهندس . من موقع ران کردن با این ارور مواجع میشم:

    Traceback (most recent call last):
    File "C:/Users/1/Desktop/Postgresql.py", line 4, in <module>
    conn = psycopg2.connect(database="postgres",user='postgres',password='password', host='127.0.0.1', port= '5432')
    File "C:\Users\1\AppData\Local\Programs\Python\Python39\lib\site-packages\psycopg2\__init__.py", line 127, in connect
    conn = _connect(dsn, connection_factory=connection_factory, **kwasync)
    psycopg2.OperationalError: could not connect to server: Connection refused (0x0000274D/10061)
    Is the server running on host "127.0.0.1" and accepting
    TCP/IP connections on port 5432?

    • علی بیگدلی
      8 months ago

      به چه سروری دارید کانکشن میزنید؟ چون به احتمال زیاد فایروال مشکل داره و یا اینکه سرویستون هنوز در حال اجرا نیست و یا از این دسته از موارد ، از سمت سرور بررسی کنین