English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

PostgreSQL 基础教程

PostgreSQL 高级教程

PostgreSQL 接口

قواعد اللغة PostgreSQL

默认情况下 PostgreSQL 安装完成后,自带了一个命令行工具 SQL Shell(psql)

Linux 系统可以直接切换到 postgres 用户来开启命令行工具:

#  sudo -i -u postgres

Windows 系统一般在它的安装目录下:

Program Files → PostgreSQL 11.3 → SQL Shell(psql)

Mac OS 我们直接搜索就可以了找到:

进入命令行工具,我们可以使用 \help 来查看各个命令的语法 :

postgres-# \help 

例如,我们查看下 select 语句的语法:

postgres=# \help SELECT
Command:     SELECT
Description: retrieve rows from a table or view
Syntax:
[ [ WITH [ RECURSIVE ] with_query [, ... ] ] ]
SELECT [ALL | DISTINCT [ON (expression[, ...])]]
    [ [ * | expression [ [ AS ] output_name ] [, ... ] ] ]
    [من من_item[, ...]]
    [where condition]
    [ [ GROUP BY grouping_element [, ... ] ] ]
    [بشرط condition[, ...]]
    [ [ WINDOW window_name AS ( window_definition ) [, ... ] ] ]
    [ [ { UNION | INTERSECT | EXCEPT } [ ALL | DISTINCT ] select ] ]
    [ [ ORDER BY expression [ ASC | DESC | USING operator ] [ NULLS { FIRST | LAST } ] [, ... ] ] ]
    [حد {عدد | ALL}]
    [ [ OFFSET start [ ROW | ROWS ] ] ]
    [ [ FETCH { FIRST | NEXT } [ count ] { ROW | ROWS } ONLY ] ]
    [ [ FOR { UPDATE | NO KEY UPDATE | SHARE | KEY SHARE } [ OF table_name [, ... ] ] [ NOWAIT | SKIP LOCKED ] [...] ] ]
from_item 可以是以下选项之一:
    [ONLY] table_name [*] [[AS] alias [(column_alias[, ...])]]

SQL 语句

一个 SQL 语句通常包含了关键字、标识符(字段)、常量、特殊符号等,下面是一个简单的 SQL 语句:

SELECT id, name FROM w3codebox

SELECTid, nameFROMw3codebox
符号类型关键字标识符(字段)关键字标识符
描述命令id 和 name 字段语句,用于设置条件规则等表名

PostgreSQL 命令

ABORT

ABORT 用于退出当前事务。

ABORT [ [ WORK | TRANSACTION ] ]

ALTER AGGREGATE

修改一个聚集函数的定义。

ALTER AGGREGATE _name_ ( _argtype_ [ , ... ] ) RENAME TO _new_name_
تعديل التجميع _name_ ( _argtype_[,...]) مالكًا إلى _new_owner_
تعديل التجميع _name_ ( _argtype_[,...]) تعيين النمط _new_schema_

تعديل الترتيب

تعديل تعريف الترتيب.

تعديل الترتيب _name_ باسم _new_name_
تعديل الترتيب _name_ مالكًا إلى _new_owner_
تعديل الترتيب _name_ تعيين النمط _new_schema_

تعديل تحويل

تعديل تعريف تحويل الكود.

تعديل تحويل name باسم new_name
تعديل تحويل name مالكًا إلى new_owner

تعديل قاعدة البيانات

تعديل قاعدة البيانات.

تعديل قاعدة البيانات name تعيين parameter { إلى|= } { القيمة|الافتراضي}
تعديل قاعدة البيانات name إعادة تعيين parameter
تعديل قاعدة البيانات name باسم new_name
تعديل قاعدة البيانات name مالكًا إلى new_owner

تعديل الحقوق الافتراضية

تحديد الحقوق الافتراضية.

تعديل الحقوق الافتراضية
    [لـ { {دور|مستخدم} دور_الهدف[,...]]
    [في النمط schema_name[,...]]
    abbreviated_grant_or_revoke
حيث أن abbreviated_grant_or_revoke هو واحد من:
إقرار{ { {تحديد|إدراج|تحديث|حذف|إزالة|المراجعة|الإشعارات}
    [،...]|جميع[الحقوق]
    على الطاولات
    TO { [ GROUP ] role_name | PUBLIC }[, ...] [ WITH GRANT OPTION ]
...

ALTER DOMAIN

تعديل تعريف المجال

ALTER DOMAIN name { SET DEFAULT expression | DROP DEFAULT }
ALTER DOMAIN name { SET | DROP } NOT NULL
ALTER DOMAIN name ADD domain_constraint
ALTER DOMAIN name DROP CONSTRAINT constraint_name [ RESTRICT | CASCADE ]
ALTER DOMAIN name OWNER TO new_owner

ALTER FUNCTION

تعديل تعريف الدالة

ALTER FUNCTION name ([ type[, ...] ]) RENAME TO new_name
ALTER FUNCTION name ([ type[, ...] ]) OWNER TO new_owner

ALTER GROUP

تعديل مجموعة المستخدمين

ALTER GROUP groupname ADD USER username[, ...]
ALTER GROUP groupname DROP USER username[, ...]
ALTER GROUP groupname RENAME TO new_name

ALTER INDEX

تعديل تعريف الفهرس

ALTER INDEX name OWNER TO new_owner
ALTER INDEX name SET TABLESPACE indexspace_name
ALTER INDEX name RENAME TO new_name

ALTER LANGUAGE

تعديل تعريف لغة العملية

ALTER LANGUAGE name RENAME TO new_name

ALTER OPERATOR

تغيير تعريف ميزة العمل

ALTER OPERATOR name ({ lefttype | NONE }, { righttype | NONE })
مالكًا إلى مالك جديد

ALTER OPERATOR CLASS

تعديل تعريف جدول المعمل.

ALTER OPERATOR CLASS name USING index_method RENAME TO new_name
ALTER OPERATOR CLASS name USING index_method OWNER TO new_owner

ALTER SCHEMA

تعديل تعريف النمط.

ALTER SCHEMA name RENAME TO new_name
ALTER SCHEMA name OWNER TO new_owner

ALTER SEQUENCE

تعديل تعريف مولد التسلسل.

ALTER SEQUENCE name [ INCREMENT [ BY ] increment ]
[{{أدنى قيمة minvalue|لا أدنى قيمة}}]
[{{أقصى قيمة maxvalue|لا أقصى قيمة}}]
[ RESTART [ WITH ] start ] [ CACHE cache ] [ [ NO ] CYCLE ]

ALTER TABLE

تعديل تعريف الجدول.

ALTER TABLE [ ONLY ] name [ * ]
action[, ...]
ALTER TABLE [ ONLY ] name [ * ]
RENAME [ COLUMN ] column TO new_column
ALTER TABLE name
RENAME TO new_name

فيها action يمكن أن يكون أحد الخيارات التالية:

ADD [ COLUMN ] column_type [ column_constraint [ ... ] ]
DROP [ COLUMN ] column [ RESTRICT | CASCADE ]
ALTER [ COLUMN ] column TYPE type [ USING expression ]
ALTER [ COLUMN ] column SET DEFAULT expression
ALTER [ COLUMN ] column DROP DEFAULT
ALTER [ COLUMN ] column { SET | DROP } NOT NULL
ALTER [ COLUMN ] column SET STATISTICS integer
ALTER [ COLUMN ] column SET STORAGE { PLAIN | EXTERNAL | EXTENDED | MAIN }
إضافة قيود الجدول
حذف القيود constraint_name [ممنوع|تناثر]
تجمع علي index_name
ضبط بدون تجمع
ضبط بدون OIDS
مالكًا إلى مالك جديد
ضبط مساحة العمل tablespace_name

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

تعديل تعريف مساحة العمل.

تعديل مساحة العمل name أسمًا جديدًا
تعديل مساحة العمل name مالكًا إلى مالك جديد

تعديل التريغير

تعديل تعريف التريغير.

تعديل التريغير name علي طاولة أسمًا جديدًا

تعديل النوع

تعديل تعريف النوع.

تعديل النوع name مالكًا إلى مالك جديد

تعديل المستخدم

تعديل حساب المستخدم للقاعدة البيانات.

تعديل المستخدم name [[مع] خيار[...] ]
تعديل المستخدم name أسمًا جديدًا
تعديل المستخدم name تعيين المعامل {إلى|=}{قيمة|افتراضي}
تعديل المستخدم name إعادة تعيين المعامل

حيث option يمكن أن يكون −

[مشفرة|غير مشفرة] كلمة المرور 'كلمة المرور'
| CREATEDB | NOCREATEDB
| CREATEUSER | NOCREATEUSER
|صالح حتى 'زمني'

تحليل

جمع الإحصاءات المتعلقة بالقاعدة البيانات.

تحليل[تفصيلي][طاولة[عنصر[[, [...]]]]]

بدء

بدء مكتبة التعامل.

بدء[عمل|معامل][نمط المعامل[, [...]]]

transaction_mode يمكن أن يكون أحد الخيارات التالية:

مستوى الت隔离{ 
   قابل للتسلسل|قراءة متكررة|قراءة مشكوك فيها
   |قراءة غير مشكوك فيها
}
قراءة الكتابة | قراءة فقط

نقطةُ التحققُ

تحقق من نقطة نقطة سجل المعامل.

نقطةُ التحققُ

إغلاقُ

إغلاقُ مفتاحُ

إغلاقُ الاسمُ

مجموعةُ

تصنيفُ جدولُ على أساسُ فهرسُ

مجموعةُ فهرسُ الاسمُ على جدولُ الاسمُ
مجموعةُ جدولُ الاسمُ
مجموعةُ

تعليقُ

تحديدُ أو تغييرُ تعليقُ على موضوعُ

تعليقُ على {
   جدولُ الاسمُ |
   عمودُ جدولُ.اسمُ العمودُ |
   جمعُ الاسمُ (نوعُ الجمعُ) |
   تحويلُ (نوعُ المصدرُ كـ نوعُ الهدفُ) |
   محددُ الشروطُ الاسمُ على جدولُ الاسمُ |
   تحويلُ الاسمُ |
   قاعدةُ البياناتُ الاسمُ |
   مجالُ الاسمُ |
   وظيفةُ الاسمُ (نوعُ المعاملُ1، نوعُ المعاملُ2، ...) |
   فهرسُ الاسمُ |
   مثلُ الكبيرُ oidُ الكبيرُ |
   عملياتُ العملياتُ (نوعُ المضيفُ، نوعُ الناتجُ) |
   فئةُ العملياتُ الاسمُ باستخدامُ طريقةُ الفهرسةُ |
   [ تقنيُ ] لغةُ الاسمُ |
   قاعدةُ القاعدةُ الاسمُ على جدولُ الاسمُ |
   نموذجُ الاسمُ |
   تسلسلُ الاسمُ |
   تقديمُ التفجيرُ الاسمُ على جدولُ الاسمُ |
   نوعُ الاسمُ |
   عرضُ الاسمُ
} 
هو 'نصُ'

تقديمُ

تقديمُ المعاملةُ الحاليةُ.

تقديمُ [ العملُ | المعاملةُ ]

نسخُ

نسخُ البياناتِ بينُ الجدولِ والملفِ.

نسخُ جدولُ الاسمُ [ ( عمودُ[, ...] ) ]
من { 'اسمُ الملف' | STDIN }
[ معُ ]
[ثنائي]
[OIDS]
[مفصل [كإقتباس] 'مفصل']
[NULL [كإقتباس] 'قيمة null']
[CSV [إقتباس [كإقتباس] 'إقتباس']]
[هروب [كإقتباس] 'هروب']
[ إجباريُ غيرُ صالحُ عمودُ[, ...] ]
نسخُ جدولُ الاسمُ [ ( عمودُ[, ...] ) ]
إلى {اسم الملف | STDOUT}
[مع]
[ثنائي]
[OIDS]
[مفصل [كإقتباس] 'مفصل']
[NULL [كإقتباس] 'قيمة null']
[CSV [إقتباس [كإقتباس] 'إقتباس']]
[هروب [كإقتباس] 'هروب']
[تحديد إقتباس عمود [،...]]

CREATE AGGREGATE

تحديد دالة تجميع جديدة.

CREATE AGGREGATE name (
   BASETYPE = input_data_type,
   SFUNC = sfunc,
   STYPE = state_data_type
   [،FINALFUNC = ffunc]
   [،INITCOND = condition_initial]
)

CREATE CAST

تحديد تحويل مخصص.

CREATE CAST (source_type AS target_type)
WITH FUNCTION func_name (arg_types)
[كإسناد | كإلزامي]
CREATE CAST (source_type AS target_type)
بدون وظيفة
[كإسناد | كإلزامي]

CREATE CONSTRAINT TRIGGER

تحديد ترقية قيود جديدة.

CREATE CONSTRAINT TRIGGER name
AFTER events ON
table_name constraint attributes
FOR EACH ROW EXECUTE PROCEDURE func_name (args)

CREATE CONVERSION

تحديد تحويل تشفير جديد.

CREATE [DEFAULT] CONVERSION name
FOR source_encoding TO dest_encoding FROM func_name

CREATE DATABASE

إنشاء قاعدة بيانات جديدة.

CREATE DATABASE name
[مع مالك = db_owner]
   [نموذج = نموذج]
   [ ENCODING [=] encoding ]
   [ TABLESPACE [=] tablespace ] 
]

CREATE DOMAIN

تعريف مجال جديد.

CREATE DOMAIN name [AS] data_type
[ DEFAULT expression ]
[ constraint [ ... ] ]

constraint يمكن أن يكون أحد الخيارات التالية:

[ CONSTRAINT constraint_name ]
{ NOT NULL | NULL | CHECK (expression) }

CREATE FUNCTION

تعريف دالة جديدة.

CREATE [OR REPLACE] FUNCTION name ( [[arg_name] arg_type [, ...]] )
RETURNS ret_type
{ LANGUAGE lang_name
   | IMMUTABLE | STABLE | VOLATILE
   | CALLED ON NULL INPUT | RETURNS NULL ON NULL INPUT | STRICT
   | [EXTERNAL] SECURITY INVOKER | [EXTERNAL] SECURITY DEFINER
   | AS 'definition'
   | AS 'obj_file', 'link_symbol'
}
[WITH ( attribute [, ...] )]

CREATE GROUP

تعريف مجموعة مستخدمة جديدة.

CREATE GROUP name [[WITH] option [...]]
Where يمكن أن تكون الخيار:
SYSID gid
| USER username [, ...]

CREATE INDEX

تعريف ملف فهرس جديد.

CREATE [UNIQUE] INDEX name ON table [USING method]
( { column | ( expression ) } [opclass] [, ...] )
[ TABLESPACE tablespace ]
[WHERE predicate]

CREATE LANGUAGE

تعريف لغة عملية جديدة.

CREATE [TRUSTED] [PROCEDURAL] LANGUAGE name
HANDLER call_handler [ VALIDATOR val_function ]

CREATE OPERATOR

定义一个新的操作符。

CREATE OPERATOR name (
   PROCEDURE = func_name
   [, LEFTARG = left_type ] [, RIGHTARG = right_type ]
   [, COMMUTATOR = com_op ] [, NEGATOR = neg_op ]
   [, RESTRICT = res_proc ] [, JOIN = join_proc ]
   [, HASHES ] [, MERGES ]
   [, SORT1 = left_sort_op ] [, SORT2 = right_sort_op ]
   [, LTCMP = less_than_op ] [, GTCMP = greater_than_op ]
)

CREATE OPERATOR CLASS

定义一个新的操作符表。

CREATE OPERATOR CLASS name [ DEFAULT ] FOR TYPE data_type
USING index_method AS
{ OPERATOR strategy_number operator_name [ ( op_type, op_type ) ] [ RECHECK ] }
   | FUNCTION support_number func_name ( argument_type [, ...] )
   | STORAGE storage_type
},[,...]

CREATE ROLE

定义一个新的数据库角色。

CREATE ROLE _name_ [ [[ WITH ] _option_ [ ... ]] ]
where `_option_` can be:
      SUPERUSER | NOSUPERUSER
    | CREATEDB | NOCREATEDB
    | CREATEROLE | NOCREATEROLE
...

CREATE RULE

定义一个新重写规则。

CREATE [ OR REPLACE ] RULE name AS ON event
TO table [ WHERE condition ]
افعل [{{أيضًا|بدلاً عن}}{لا شيء|أمر|({أمر};أمر...})}

إنشاء نمط

تحديد نمط جديد.

إنشاء نمط
[{{إذن مستخدم}}{{{{عنصر النمط[,...]}}}}]
إنشاء نمط إذن مستخدم
[{{عنصر النمط[,...]}}]

إنشاء خادم

تحديد خادم خارجي جديد.

إنشاء خادم _server_name_[{{نوع _server_type_}}{{{{إصدار _server_version_}}}}]
    مقابس بيانات خارجية _fdw_name_
    [{{خيارات OPTIONS({_option_}_value_[,...])}}]

إنشاء سلسلة

تحديد مولد سلسلة جديد.

إنشاء [{{دائمي|TEMP}}] سلسلة اسم
[{{زيادة increment}[{{ب}}]]]
[{{أدنى قيمة minvalue|لا أدنى قيمة}}]
[{{أقصى قيمة maxvalue|لا أقصى قيمة}}]
[{{البداية[{{مع}}start}][{{مخزن cache}][{{[لا]محيط]]}

إنشاء جدول

تحديد جدول جديد.

إنشاء [[[عالمي|محلي]{ 
   دائميًا|TEMP}]]جدول table_name({ 
      اسم الحقلنوع البيانات[{{قيمة افتراضيةdefault_expr}][قيود الحقل[...]]]
      |قيود الجدول
      |مثل parent_table[{{تضمين|إلغاء التضمين}DEFAULTS}] 
   },[,...]
)
[ينشئُ (parent_table[,...])]
[ WITH OIDS | WITHOUT OIDS ]
[ ON COMMIT { PRESERVE ROWS | DELETE ROWS | DROP } ]
[ TABLESPACE tablespace ]

column_constraint يمكن أن يكون أحد الخيارات التالية:

[ CONSTRAINT constraint_name ] { 
   NOT NULL |
   NULL |
   UNIQUE [ USING INDEX TABLESPACE tablespace ] |
   PRIMARY KEY [ USING INDEX TABLESPACE tablespace ] |
   CHECK ( expression ) |
   REFERENCES ref_table [ ( ref_column ) ]
   [ MATCH FULL | MATCH PARTIAL | MATCH SIMPLE ]
   [ ON DELETE action ] [ ON UPDATE action ] 
}
[ DEFERRABLE | NOT DEFERRABLE ] [ INITIALIALLY DEFERRED | INITIALIALLY IMMEDIATE ]

table_constraint يمكن أن يكون أحد الخيارات التالية:

[ CONSTRAINT constraint_name ]
{ UNIQUE ( column_name [, ... ] ) [ USING INDEX TABLESPACE tablespace ] |
PRIMARY KEY ( column_name [, ... ] ) [ USING INDEX TABLESPACE tablespace ] |
CHECK ( expression ) |
FOREIGN KEY ( column_name [, ... ] )
REFERENCES ref_table [ ( ref_column [, ... ] ) ]
[ MATCH FULL | MATCH PARTIAL | MATCH SIMPLE ]
[ ON DELETE action ] [ ON UPDATE action ] }
[ DEFERRABLE | NOT DEFERRABLE ] [ INITIALIALLY DEFERRED | INITIALIALLY IMMEDIATE ]

CREATE TABLE AS

从一个查询的结果中定义一个新表。

CREATE [ [ GLOBAL | LOCAL ] { TEMPORARY | TEMP } ] TABLE table_name
[ (column_name [, ...] ) ] [ [ WITH | WITHOUT ] OIDS ]
AS query

CREATE TABLESPACE

تعريف مساحة عمل جديدة.

CREATE TABLESPACE tablespace_name [ OWNER username ] LOCATION 'directory'

CREATE TRIGGER

تعريف ترقية جديد.

CREATE TRIGGER name { BEFORE | AFTER } { event [ OR ... ] }
ON table [ FOR [ EACH ] { ROW | STATEMENT } ]
EXECUTE PROCEDURE func_name ( arguments )

CREATE TYPE

تعريف نوع بيانات جديد.

CREATE TYPE name AS
( attribute_name data_type [, ... ] )
CREATE TYPE name (
INPUT = input_function,
OUTPUT = output_function
[, RECEIVE = receive_function ]
[, SEND = send_function ]
[, ANALYZE = analyze_function ]
[, INTERNALLENGTH = { internal_length | VARIABLE } ]
[, PASSEDBYVALUE ]
[, ALIGNMENT = alignment ]
[, STORAGE = storage ]
[, DEFAULT = default ]
[, ELEMENT = element ]
[, DELIMITER = delimiter ]
)

CREATE USER

تخليق حساب مستخدم قاعدة البيانات الجديدة.

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

option يمكن أن يكون أحد الخيارات التالية:

SYSID uid
| [ ENCRYPTED | UNENCRYPTED ] PASSWORD 'password'
| CREATEDB | NOCREATEDB
| CREATEUSER | NOCREATEUSER
| IN GROUP group_name [, ...]
| VALID UNTIL 'abs_time'

CREATE VIEW

تعريف عرض.

CREATE [ OR REPLACE ] VIEW name [ ( column_name [, ...] ) ] AS query

DEALLOCATE

حذف استعلام مسبق.

DEALLOCATE [ PREPARE ] plan_name

DECLARE

تعريف سبرة.

DECLARE name [ BINARY ] [ INSENSITIVE ] [ [ NO ] SCROLL ]
CURSOR [ { WITH | WITHOUT } HOLD ] FOR query
[ FOR { READ ONLY | UPDATE [ OF column [, ...] ] } ]

DELETE

حذف سطر من الجدول.

DELETE FROM [ ONLY ] table [ WHERE condition ]

DROP AGGREGATE

حذف دالة تجميع معرف من قبل المستخدم.

DROP AGGREGATE name ( type ) [ CASCADE | RESTRICT ]

DROP CAST

حذف تحويل نوع معرف من قبل المستخدم.

DROP CAST (source_type AS target_type) [ CASCADE | RESTRICT ]

DROP CONVERSION

حذف تحويل تشفير معرف من قبل المستخدم.

DROP CONVERSION name [ CASCADE | RESTRICT ]

DROP DATABASE

حذف قاعدة بيانات.

DROP DATABASE name

DROP DOMAIN

حذف مجال معرف من قبل المستخدم.

DROP DOMAIN name [, ...] [ CASCADE | RESTRICT ]

DROP FUNCTION

حذف دالة.

DROP FUNCTION name ( [ type [, ...] ] ) [ CASCADE | RESTRICT ]

DROP GROUP

حذف مجموعة مستخدم.

DROP GROUP name

DROP INDEX

حذف مؤشر.

DROP INDEX name[, ...] [ CASCADE | RESTRICT ]

DROP LANGUAGE

حذف لغة عملية

DROP [ PROCEDURAL ] LANGUAGE name [ CASCADE | RESTRICT ]

DROP OPERATOR

حذف عمليات

DROP OPERATOR name ( { left_type | NONE }, { right_type | NONE } )
[CASCADE | RESTRICT]

DROP OPERATOR CLASS

حذف جدول عمليات

DROP OPERATOR CLASS name USING index_method [ CASCADE | RESTRICT ]

DROP ROLE

حذف لغة عملية

DROP [ PROCEDURAL ] LANGUAGE name [ CASCADE | RESTRICT ]

DROP RULE

حذف قاعدة إعادة الكتابة

DROP RULE name ON relation [ CASCADE | RESTRICT ]

DROP SCHEMA

حذف نموذج

DROP SCHEMA name[, ...] [ CASCADE | RESTRICT ]

DROP SEQUENCE

حذف سلسلة

DROP SEQUENCE name[, ...] [ CASCADE | RESTRICT ]

DROP TABLE

حذف جدول

DROP TABLE name[, ...] [ CASCADE | RESTRICT ]

DROP TABLESPACE

حذف مساحة جدول

DROP TABLESPACE tablespace_name

DROP TRIGGER

حذف تعريف تحفيز

DROP TRIGGER name ON table [ CASCADE | RESTRICT ]

DROP TYPE

حذف نوع بيانات مستخدم

DROP TYPE name[, ...] [ CASCADE | RESTRICT ]

DROP USER

حذف حساب مستخدم قاعدة البيانات

DROP USER name

DROP VIEW

حذف عرض

DROP VIEW name[, ...] [ CASCADE | RESTRICT ]

END

تقديم المعاملة الحالية.

انتهاء [ عمل | معاملة ]

تنفيذ

تنفيذ استعلام مسبق.

تنفيذ plan_name [ ( معامل[, ...] ) ]

توضيح

إظهار خطة تنفيذ تعبير.

توضيح [ تحليل ] [ واضح ] تعبير

استخراج

استخراج سطر من استعلام باستخدام سوق.

استخراج [ اتجاه { من | في } ] اسم سوق

اتجاه يمكن أن يكون أحد الخيارات التالية:

التالي
السابق
الأول
الأخير
مطلق عدد
مقارنة عدد
عدد
الجميع
البعida الأمامية
البعida الأمامية عدد
البعida الأمامية جميع
البعida للخلف
البعida للخلف عدد
البعida للخلف جميع

إذن

تحديد إذن الوصول.

إذن { { استعلام | إدراج | تحديث | حذف | قاعدة | مرجع | ترقية } }
[,...] | جميع [ الصلاحيات ] }
على [ الجدول ] table_name [, ...]
إلى { اسم المستخدم | مجموعة اسم المجموعة | عام }[, ...] [ مع خيار الإذن ]
إذن { { إنشاء | مؤقت | مؤقت }[,...] | جميع الإذنات }
على قاعدة البيانات db_name [, ...]
إلى { اسم المستخدم | مجموعة اسم المجموعة | عام }[, ...] [ مع خيار الإذن ]
إذن { إنشاء | جميع الإذنات }
على مساحة العمل tablespace_name [, ...]
إلى { اسم المستخدم | مجموعة اسم المجموعة | عام }[, ...] [ مع خيار الإذن ]
إذن { تنفيذ | جميع الإذنات }
على الوظيفة func_name ( [نوع، ...]) [, ...]
إلى { اسم المستخدم | مجموعة اسم المجموعة | عام }[, ...] [ مع خيار الإذن ]
إذن { استخدام | جميع الإذنات }
ON LANGUAGE lang_name[, ...]
إلى { اسم المستخدم | مجموعة اسم المجموعة | عام }[, ...] [ مع خيار الإذن ]
إذن { { إنشاء | استخدام }[,...] | جميع الإذنات }
ON SCHEMA schema_name[, ...]
إلى { اسم المستخدم | مجموعة اسم المجموعة | عام }[, ...] [ مع خيار الإذن ]

INSERT

إنشاء صف جديد في الجدول، أي إدخال بيانات.

INSERT INTO table [ ( column[, ...] ) ]
{ القيم الافتراضية | القيم ( { تعبير | افتراضي }[, ...] ) | استعلام }

LISTEN

استماع إلى إشعار.

استماع إلى اسم

LOAD

تحميل أو إعادة تحميل ملف مكتبة مشتركة.

تحميل 'filename'

قفل

قفل جدول.

قفل [ جدول ] name [, ...] [ في وضعه القفل نمط ] [ لا ينتظر ]

وضع القفل يمكن أن يكون أحد الخيارات التالية:

مشاركة الوصول | مشاركة السطر | حصرية السطر | حصرية تحديث
| مشاركة | حصرية مشاركة السطر | حصرية | حصرية الوصول

تحريك

تحديد موقع مؤشر.

تحريك [ اتجاه { من | في } ] cursor_name

إعلام

توليد إعلام.

إعلام name

إعداد

إنشاء استعلام مسبق.

إعداد plan_name [ (نوع بيانات [,...]) ] ك تعبير

إعادة إنشاء مؤشر

إعادة إنشاء مؤشر.

إعادة إنشاء مؤشر { قاعدة بيانات | جدول | مؤشر } name [ إجباري ]

إطلاق نقطة الحفظ

إزالة نقطة الحفظ مسبقًا معرفة.

إطلاق [ نقطة الحفظ ] name

إعادة ضبط

استعادة قيمة معلمة التشغيل إلى القيمة الافتراضية.

إعادة ضبط name
إعادة ضبط جميع

إلغاء الصلاحيات

إزالة صلاحيات الوصول.

REVOKE [GRANT OPTION FOR]
{ { اختيار | إدراج | تحديث | حذف | قاعدة | مراجعة | تفعيل } }
[,...] | جميع [ الصلاحيات ] }
على [ الجدول ] table_name [, ...]
FROM {username | GROUP group_name | PUBLIC}[, ...]
[CASCADE | RESTRICT]
REVOKE [GRANT OPTION FOR]
{ { إنشاء | مؤقتة | مؤقت } [,...] | جميع [ الصلاحيات ] }
على قاعدة البيانات db_name [, ...]
FROM {username | GROUP group_name | PUBLIC}[, ...]
[CASCADE | RESTRICT]
REVOKE [GRANT OPTION FOR]
{ إنشاء | جميع [ الصلاحيات ] }
على مساحة العمل tablespace_name [, ...]
FROM {username | GROUP group_name | PUBLIC}[, ...]
[CASCADE | RESTRICT]
REVOKE [GRANT OPTION FOR]
{ تنفيذ | جميع [ الصلاحيات ] }
على الوظيفة func_name ( [نوع، ...]) [, ...]
FROM {username | GROUP group_name | PUBLIC}[, ...]
[CASCADE | RESTRICT]
REVOKE [GRANT OPTION FOR]
{USAGE | ALL [PRIVILEGES]}
ON LANGUAGE lang_name[, ...]
FROM {username | GROUP group_name | PUBLIC}[, ...]
[CASCADE | RESTRICT]
REVOKE [GRANT OPTION FOR]
{{{CREATE | USAGE}[,...]} | ALL [PRIVILEGES]}
ON SCHEMA schema_name[, ...]
FROM {username | GROUP group_name | PUBLIC}[, ...]
[CASCADE | RESTRICT]

ROLLBACK

退出当前事务。

ROLLBACK [WORK | TRANSACTION]

ROLLBACK TO SAVEPOINT

回滚到一个保存点。

ROLLBACK [WORK | TRANSACTION] TO [SAVEPOINT] savepoint_name

SAVEPOINT

在当前事务里定义一个新的保存点。

SAVEPOINT savepoint_name

SELECT

从表或视图中取出若干行。

SELECT [ALL | DISTINCT [ON (expression[, ...])]]
* | تعبير [كـ اسم_الإخراج][, ...]
[من من_item[, ...]]
[where condition]
[مجموعات expression[, ...]]
[بشرط condition[, ...]]
[{الجمع | التداخل | الإزالة} [كل] استعلام]
[ترتيب expression [صاعد | هابط | باستخدام عميل][, ...]]
[حد {عدد | ALL}]
[الاستئناف start]
[للتحديث [من جدول_الاسم[, ...]]]

from_item 可以是以下选项:

[ONLY] table_name [*] [[AS] alias [(column_alias[, ...])]]
(select) [AS] alias [(column_alias[, ...])]
function_name ([argument[, ...]])
[AS] alias [(column_alias[, ...] | column_definition[, ...])]
function_name ([argument[, ...]]) AS (column_definition[, ...])
from_item [NATURAL] join_type from_item
[ON join_condition | USING (join_column[, ...])]

SELECT INTO

从一个查询的结果中定义一个新表。

SELECT [ALL | DISTINCT [ON (expression[, ...])]]
* | تعبير [كـ اسم_الإخراج][, ...]
إلى [مؤقت | TEMP] [جدول] جدول_جديد
[من من_item[, ...]]
[where condition]
[مجموعات expression[, ...]]
[بشرط condition[, ...]]
[{الجمع | التداخل | الإزالة} [كل] استعلام]
[ترتيب expression [صاعد | هابط | باستخدام عميل][, ...]]
[حد {عدد | ALL}]
[الاستئناف start]
[للتحديث [من جدول_الاسم[, ...]]]

تعيين

تعديل المعلمات التشغيلية.

تعيين [SESSION | LOCAL] اسم {إلى | =} {قيمة | 'قيمة' | DEFAULT}
تعيين [SESSION | LOCAL] المنطقة الزمنية {منطقة_الزمن | LOCAL | DEFAULT}

تعيين القيود

تعيين نمط التحقق من القيود للمعامل الحالي.

تعيين القيود {ALL | name[, ...]} {DEFERRED | IMMEDIATE}

تعيين الجلسة للإذونات

إعداد معرف المستخدم للجلسة الحالية ومعرف المستخدم الحالي.

تعيين [SESSION | LOCAL] تعريف الأذونات للجلسة اسم المستخدم
تعيين [SESSION | LOCAL] تعريف الأذونات للجلسة افتراضي
إعادة تعيين تعريف الأذونات للجلسة

تعيين المعامل

بدء مكتبة التعامل.

تعيين معاملات المعامل
تعيين خصائص الجلسة كنوع معاملات المعامل

حيث transaction_mode من بين −

مستوى الالتزام {قابل للتسلسل | قراءة متكررة | قراءة ملتزمة}
| قراءة غير مقيدة}
قراءة الكتابة | قراءة فقط

show

عرض قيمة المعلمات التشغيلية.

show name
show all

start transaction

بدء مكتبة التعامل.

start transaction [transaction_mode [, ...]]

transaction_mode يمكن أن يكون أحد الخيارات التالية:

مستوى الالتزام {قابل للتسلسل | قراءة متكررة | قراءة ملتزمة}
| قراءة غير مقيدة}
قراءة الكتابة | قراءة فقط

truncate

إفراغ جدول أو مجموعة من الجداول.

truncate [table] name

unlisten

توقف عن الاستماع إلى إشعارات الإخطارات.

unlisten {name | *}

update

تحديث سطر في الجدول.

update [only] table set column = {expression | default} [, ...]
[from from_list]
[where condition]

vacuum

جمع القمامة وتحليل قاعدة البيانات اختيارياً.

vacuum [full] [freeze] [verbose] [table]
vacuum [full] [freeze] [verbose] analyze [table [column [, ...]]]

values

حساب سطر أو مجموعة من السطور.

values (expression [, ...]) [, ...]
    [order by _sort_expression_ [asc | desc | using _operator_] [, ...]]
    [limit {count | all}]
    [offset _start_ [row | rows]]
    [-fetch {-first | next} [count] {row | rows} only]