إنشاء مستخدم جديد CREATE USER

من موسوعة حسوب
< SQL

يُستخدم هذا الأمر لإنشاء مستخدم جديد، وله الصيغ الآتية (بحسب محركات قواعد البيانات المختلفة).

في محرك البيانات PostgreSQL

CREATE USER name [ [ WITH ] option [ ... ] ]

إذ إن name هو اسم المستخدم المنشَأ ويمكن أن يكون الخيار option أحد الكلمات المفتاحية الآتية:

الخيار مهمته
 SUPERUSER لجعل المستخدم SUPERUSER أي له كافة صلاحيات الوصول access privileges في قاعدة البيانات
CREATEDB لإعطاء المستخدم صلاحية إنشاء قاعدة بيانات جديدة
CREATEROLE لإعطاء المستخدم صلاحية إنشاء مستخدم آخر جديد
CONNECTION LIMIT connlimit لتحديد عدد من الاتصالات connlimit التزامنية التي يستطيع المستخدم القيام بها مع قاعدة البيانات
PASSWORD 'password'‎ لتحديد كلمة المرور password للمستخدم
VALID UNTIL 'timestamp'‎ لتحديد مدة صلاحية كلمة المرور لهذا المستخدم حتى التاريخ والتوقيت timestamp، وإن لم يُحدد فهي صالحة دائمًا

أمثلة

لإنشاء مستخدم جديد باسم Ahmad وبكلمة مرور ah1751m صالحة حتى تاريخ 1/1/2019، يستخدم الأمر الآتي:

CREATE USER Ahmad WITH PASSWORD 'ah1751m' VALID UNTIL '2019-01-01';

ولإنشاء مستخدم جديد باسم Baraa وإعطائه صلاحية إنشاء قاعدة بيانات جديدة ومستخدمين جدد، يستخدم الأمر الآتي:

CREATE USER Baraa WITH CREATEDB CREATEROLE;

في محركي البيانات MySQL وOracle

CREATE USER [IF NOT EXISTS] name
  [IDENTIFIED BY PASSWORD 'password'] 
  [WITH resource_option]
  [password_option]

إذ ينشئ هذا الأمر مستخدمًا جديدًا باسم user، ويُمكن تحديد كلمة المرور password له، إضافة إلى بعض خيارات المصادر وخيارات أخرى متعلقة بكلمة المرور، وستُذكر تباعًا.

خيارات المصادر resource_option

الخيار مهمته
MAX_QUERIES_PER_HOUR count لتحديد العدد الأقصى للاستعلامات المسموحة خلال الساعة بالعدد count
MAX_UPDATES_PER_HOUR count لتحديد العدد الأقصى للتحديثات (التعديلات) المسموحة خلال الساعة بالعدد count
MAX_CONNECTIONS_PER_HOUR count لتحديد العدد الأقصى للاتصالات المسموحة خلال الساعة بالعدد count

خيارات كلمة المرور password_option

مهمته الخيار
لضمان استمرار كلمة المرور لهذا المستخدم بشكل دائم PASSWORD EXPIRE NEVER
لتحديد n يومًا لصلاحية كلمة المرور PASSWORD EXPIRE INTERVAL n DAY

أمثلة

لإنشاء مستخدم جديد باسم Ahmad وبكلمة مرور ah1751m صالحة لمدة 180 يومًا، يستخدم الأمر الآتي:

CREATE USER Ahmad IDENTIFIED BY PASSWORD 'ah1751m' PASSWORD EXPIRE INTERVAL 180 DAY;

ولإنشاء مستخدم جديد باسم Baraa وتحديد العدد الأقصى لاستعلاماته خلال الساعة (500 استعلام)، يستخدم الأمر الآتي:

CREATE USER Baraa WITH MAX_QUERIES_PER_HOUR 500;

في محرك البيانات SQL Server

CREATE USER name   
  [WITH PASSWORD = 'password' ;

إذ إن name هو اسم المستخدم المنشَأ وتُحدَّد كلمة المرور بالكلمة المفتاحية PASSWORD.

مثال

لإنشاء مستخدم جديد باسم Ahmad وبكلمة مرور ah1751m، يستخدم الأمر الآتي:

CREATE USER Ahmad WITH PASSWORD 'ah1751m';

التوافقية

SQLServer SQLite Oracle PostgreSQL MySQL
نعم لا نعم نعم نعم

مصادر