it-swarm.asia

كيف يمكنني تحديد زيادة العمود تلقائيًا في pgAdmin؟

لقد بدأت في تعلم pgAdmin III لإدارة قاعدة بيانات PostgreSQL. لكنه لم يكن تطبيقًا سهل الاستخدام.

إذا قمت بإنشاء أو إنشاء جدول باستخدام pgAdmin III ، فكيف يمكنني إضافة وظيفة "زيادة تلقائية" في معرف عمود له نوع عدد صحيح؟

15
Jonas

خياران: استخدم "نوع البيانات" المسلسل أو قم بإنشاء تسلسل واستخدم هذا التسلسل كقيمة افتراضية لرقمك الصحيح:

CREATE SEQUENCE your_seq;
CREATE TABLE foo(
  id int default nextval('your_seq'::regclass),
  other_column TEXT
);
INSERT INTO foo(other_column) VALUES ('bar') RETURNING *;
17
Frank Heikens

إذا كنت تريد القيام بذلك في PGAdmin ، فهذا أسهل بكثير من استخدام سطر الأوامر. يبدو في PostgreSQL ، لإضافة زيادة تلقائية إلى عمود ، نحتاج أولاً إلى إنشاء تسلسل زيادة تلقائي وإضافته إلى العمود المطلوب. أعجبني هذا.

1) أولاً تحتاج إلى التأكد من وجود مفتاح أساسي لجدولك. احتفظ أيضًا بنوع بيانات المفتاح الأساسي في bigint أو smallint. (استخدمت bigint ، ولم أجد نوع بيانات يسمى التسلسلي كما هو مذكور في إجابات أخرى في مكان آخر)

2) ثم قم بإضافة تسلسل بالنقر بزر الماوس الأيمن على تسلسل-> إضافة تسلسل جديد . إذا لم تكن هناك بيانات في الجدول ، فاترك التسلسل كما هو ، ولا تقم بأي تغييرات. فقط احفظه. إذا كانت هناك بيانات موجودة ، فأضف القيمة الأخيرة أو الأعلى في عمود المفتاح الأساسي إلى القيمة الحالية في علامة التبويب التعريفات كما هو موضح أدناه. enter image description here

3) أخيرًا ، أضف السطر nextval('your_sequence_name'::regclass) إلى القيمة الافتراضية في مفتاحك الأساسي كما هو موضح أدناه.

enter image description here تأكد من صحة اسم التسلسل هنا. هذا كل شيء ويجب أن تعمل الزيادة التلقائية.

15
toing_toing