نصائح

إدراج البيانات في قاعدة بيانات PostgreSQL

إدراج البيانات في قاعدة بيانات PostgreSQL



We are searching data for your request:

Forums and discussions:
Manuals and reference books:
Data from registers:
Wait the end of the search in all databases.
Upon completion, a link will appear to access the found materials.

01 من 07

Psycopg: تثبيت واستيراد

الوحدة التي سنستخدمها في هذا البرنامج التعليمي هي psycopg. إنه متاح على هذا الرابط. قم بتنزيله وتثبيته باستخدام الإرشادات المرفقة مع الحزمة.

بمجرد تثبيته ، يمكنك استيراده مثل أي وحدة أخرى:

# libs لواجهة قاعدة البيانات

استيراد psycopg

إذا كان أي من حقولك يتطلب تاريخًا أو وقتًا ، فستحتاج أيضًا إلى استيراد الوحدة النمطية لبيانات التاريخ التي تأتي قياسية مع Python.

استيراد تاريخ02 من 07

Python إلى PostgreSQL: افتح يا سمسم

لفتح اتصال بقاعدة بيانات ، يحتاج psycopg إلى وسيطين: اسم قاعدة البيانات ('dbname') واسم المستخدم ('المستخدم'). يتبع بناء الجملة لفتح اتصال هذا التنسيق:

= psycopg.connect ('dbname ='، 'user =')

بالنسبة لقاعدة البيانات الخاصة بنا ، سنستخدم اسم قاعدة البيانات "الطيور" واسم المستخدم "روبرت". بالنسبة لكائن الاتصال داخل البرنامج ، دعنا نستخدم المتغير "اتصال". لذلك ، سوف يكون أمر اتصالنا كما يلي:

اتصال = psycopg.connect ('dbname = الطيور' ، 'المستخدم = روبرت')

بطبيعة الحال ، لن يعمل هذا الأمر إلا إذا كان كلا المتغيرين دقيقين: يجب أن يكون هناك قاعدة بيانات حقيقية باسم "الطيور" يمكن للمستخدم المسمى "روبرت" الوصول إليها. إذا لم يتم ملء أي من هذه الشروط ، فسيقوم Python بإلقاء خطأ.

03 من 07

مارك مكانك في PostgreSQL مع بيثون

بعد ذلك ، تحب Python أن تكون قادرًا على تتبع آخر ما تركته في القراءة والكتابة في قاعدة البيانات. في psycopg ، يسمى هذا المؤشر ، لكننا سنستخدم متغير "علامة" لبرنامجنا. لذلك ، يمكننا بعد ذلك بناء المهمة التالية:

علامة = connection.cursor ()04 من 07

فصل نموذج PostgreSQL ووظيفة بايثون

على الرغم من أن بعض صيغ إدراج SQL تسمح ببنية أعمدة مفهومة أو غير مذكورة ، فإننا سنستخدم القالب التالي لبيانات الإدراج لدينا:

ادخل في

(الأعمدة) القيم (القيم) ؛

بينما يمكننا تمرير عبارة بهذا التنسيق إلى طريقة psycopg "التنفيذ" ، وبالتالي إدخال البيانات في قاعدة البيانات ، يصبح هذا سريعًا معقدًا ومربكًا. هناك طريقة أفضل هي تقسيم العبارة بشكل منفصل عن الأمر "تنفيذ" كما يلي:

statement = 'INSERT INTO' + table + '(' + عمود + ') القيم (' + قيم + ')'

mark.execute (البيان)

بهذه الطريقة ، يتم الاحتفاظ بالنموذج منفصل عن الوظيفة. هذا الفصل يساعد في كثير من الأحيان في تصحيح الأخطاء.

05 من 07

بايثون ، بوستجرس ، وكلمة "سي"

أخيرًا ، بعد تمرير البيانات إلى PostgreSQL ، يجب أن نلزم البيانات بقاعدة البيانات:

connection.commit ()

الآن قمنا ببناء الأجزاء الأساسية من وظيفتنا "إدراج". معًا ، تبدو الأجزاء كالتالي:

اتصال = psycopg.connect ('dbname = الطيور' ، 'المستخدم = روبرت')
علامة = connection.cursor ()
statement = 'INSERT INTO' + table + '(' + عمود + ') القيم (' + قيم + ')'
mark.execute (البيان)
connection.commit ()06 من 07

تحديد المعلمات

ستلاحظ أن لدينا ثلاثة متغيرات في بياننا: الجدول والأعمدة والقيم. وبذلك تصبح المعلمات التي تسمى الوظيفة:

def insert (جدول ، أعمدة ، قيم):

بالطبع ، يجب أن نتبع ذلك بسلسلة مستندات:

"وظيفة لإدراج بيانات النموذج" القيم "في الجدول" الجدول "

وفقًا للأعمدة الموجودة في "العمود"07 من 07

ضعها جميعًا معًا واتصل بها

أخيرًا ، لدينا وظيفة لإدخال البيانات في جدول من اختيارنا ، باستخدام الأعمدة والقيم المحددة حسب الحاجة.

def insert (جدول ، أعمدة ، قيم):
"وظيفة لإدراج بيانات النموذج" القيم "في الجدول" الجدول "
وفقًا للأعمدة الموجودة في "العمود"
اتصال = psycopg.connect ('dbname = الطيور' ، 'المستخدم = روبرت')
علامة = connection.cursor ()
statement = 'INSERT INTO' + table + '(' + عمود + ') القيم (' + قيم + ')'
mark.execute (البيان)
connection.commit ()
إرجاع

للاتصال بهذه الوظيفة ، نحتاج ببساطة إلى تحديد الجدول والأعمدة والقيم وتمريرها كما يلي:

اكتب = "البوم"
الحقول = "المعرف ، النوع ، التاريخ"
القيم = "17965 ، بومة الحظيرة ، 2006-07-16"
إدراج (النوع ، الحقول ، القيم)


شاهد الفيديو: الدرس الثالث : انشاء سيرفر وقاعده بيانات جديده وعمل جدول واضافه اعمده في PostgreSQL (أغسطس 2022).