Avatar ·

لماذا تحتاج إلى Commit و Connection و Cursor و Close؟

📁 المكرر, بايثون, مثال

مثال أساسي

import psycopg2 # الاتصال بقاعدة بيانات موجودة conn = psycopg2.connect("dbname=test user=postgres") # فتح cursor لتنفيذ العمليات cur = conn.cursor() # تنفيذ أمر: هذا ينشئ جدولًا جديدًا cur.execute("CREATE TABLE testa (id serial PRIMARY KEY, num integer, data varchar);") # تمرير البيانات لملء placeholders في الاستعلام والسماح لـ psycopg2 بإجراء التحويل الصحيح (لا مزيد من SQL injection!) cur.execute("INSERT INTO testa (num, data) VALUES (%s, %s)", (100, "abc'def")) # استعلام قاعدة البيانات والحصول على البيانات ككائنات Python cur.execute("SELECT * FROM testa;") cur.fetchone() # تطبيق التغييرات على قاعدة البيانات conn.commit() # إغلاق cursor والاتصال cur.close() conn.close()