|
|
سطر 498: |
سطر 498: |
| * [https://docs.microsoft.com/en-us/sql/t-sql/language-elements/logical-operators-transact-sql توثيق أنواع البيانات في محرك SQL Server] | | * [https://docs.microsoft.com/en-us/sql/t-sql/language-elements/logical-operators-transact-sql توثيق أنواع البيانات في محرك SQL Server] |
| [[تصنيف:SQL|{{SUBPAGENAME}}]] | | [[تصنيف:SQL|{{SUBPAGENAME}}]] |
| | {{#seo: |
| | description=سرد كل أنواع البيانات المتاحة في لغة SQL للتعامل مع قواعد البيانات باختلاف المحركات مثل أنواع البيانات في MySQL و PostgreSQL و Oracle وغيرها. |
| | }} |
المراجعة الحالية بتاريخ 07:21، 4 أكتوبر 2022
تختلف أنواع البيانات بحسب محرك البيانات المستخدَم وستُذكر تباعًا.
في محرك البيانات MySQL
أنواع البيانات العددية Numeric
النوع
|
بداية المجال
|
نهاية المجال
|
مساحة التخزين
|
TINYINT
|
-128
|
127
|
1 بايت
|
SMALLINT
|
-32768
|
32767
|
2 بايت
|
MEDIUMINT
|
-8388608
|
8388607
|
3 بايت
|
INT
|
-2147483648
|
2147483647
|
4 بايت
|
BIGINT
|
-9223372036854775808
|
9223372036854775807
|
8 بايت
|
BIT
|
0
|
1
|
بت واحد
|
البيانات العددية الثابتة مع الفاصلة العشرية
النوع
|
الوصف
|
DECIMAL(p,s)
|
يعبّر الرمز p عن قيمة الدقة أي عدد الخانات المسموحة الإجمالية للعدد ويعبّر الرمز s عن عدد الخانات المسموحة ما بعد الفاصلة العشرية.
مثل: DECIMAL(5,2) يتحدد بالمجال ما بين -999.99 و +999.99
|
FLOAT(p,s)
|
يعبّر الرمز p عن قيمة الدقة أي عدد الخانات المسموحة الإجمالية للعدد ويعبّر الرمز s عن عدد الخانات المسموحة ما بعد الفاصلة العشرية.
مثل: FLOAT(7,3) يتحدد بالمجال ما بين -9999.999 و +9999.999
|
DOUBLE(p,s)
|
يعبّر الرمز p عن قيمة الدقة أي عدد الخانات المسموحة الإجمالية للعدد ويعبّر الرمز s عن عدد الخانات المسموحة ما بعد الفاصلة العشرية.
مثل: DOUBLE(1,1) يتحدد بالمجال ما بين -9.9 و +9.9
|
أنواع بيانات التاريخ والتوقيت Date and Time
النوع
|
الوصف
|
DATE
|
التاريخ بالشكل 'YYYY-MM-DD'
|
DATETIME
|
التاريخ والتوقيت بالشكل 'YYYY-MM-DD HH:MM:SS'
|
TIME
|
التوقيت بالشكل 'HH:MM:SS'
|
YEAR[(2|4)]
|
العام بخانتين أو 4 خانات
|
أنواع السلاسل String
النوع
|
الوصف
|
CHAR(size)
|
سلسلة محرفية بطول ثابت size
|
VARCHAR(size)
|
سلسلة محرفية بطول متغيّر وبحد أقصى size
|
TINYTEXT(size)
|
إذ يعبر size عن عدد المحارف التي ستُخزّن في السلسلة
|
TEXT(size)
|
إذ يعبر size عن عدد المحارف التي ستُخزّن في السلسلة
|
MEDIUMTEXT(size)
|
إذ يعبر size عن عدد المحارف التي ستُخزّن في السلسلة
|
LONGTEXT(size)
|
إذ يعبر size عن عدد المحارف التي ستُخزّن في السلسلة
|
BINARY(size)
|
سلسلة من الخانات الثنائية بطول ثابت إذ يعبر size عن عدد الخانات في السلسلة
|
VARBINARY(size)
|
سلسلة من الخانات الثنائية بطول متغير إذ يعبر size عن عدد الخانات الأقصى في السلسلة
|
في محرك البيانات PostgreSQL
أنواع البيانات العددية Numeric
النوع
|
المجال
|
مساحة التخزين
|
smallint
|
-32768 حتى +32767
|
2 بايت
|
integer
|
-2147483648 حتى +2147483647
|
4 بايت
|
bigint
|
-9223372036854775808 حتى +9223372036854775807
|
8 بايت
|
decimal
|
يصل إلى 131072 خانة قبل الفاصلة العشرية و 16383 خانة بعد الفاصلة العشرية
|
متغيرة
|
numeric
|
يصل إلى 131072 خانة قبل الفاصلة العشرية و 16383 خانة بعد الفاصلة العشرية
|
متغيرة
|
real
|
بدقة 6 خانات عشرية
|
4 بايت
|
double precision
|
بدقة 15 خانة عشرية
|
8 بايت
|
smallserial
|
1 حتى 32767
|
2 بايت
|
serial
|
1 حتى 2147483647
|
4 بايت
|
bigserial
|
1 حتى 9223372036854775807
|
8 بايت
|
أنواع البيانات الماليّة Monetary
النوع
|
المجال
|
مساحة التخزين
|
money
|
-92233720368547758.08 حتى +92233720368547758.08
|
8 بايت
|
أنواع البيانات المحرفية Character
النوع
|
الوصف
|
varchar(n)
|
سلسلة محرفية متغيرة الطول بحدٍّ أقصى n
|
character(n), char(n)
|
سلسلة محرفية ثابتة الطول n
|
text
|
سلسلة محرفية غير محدودة
|
أنواع البيانات الثنائية Binary
النوع
|
الوصف
|
bytea
|
سلسلة ثنائية متغيرة الطول
|
أنواع بيانات التاريخ والتوقيت Date and Time
النوع
|
الوصف
|
بداية المجال
|
نهاية المجال
|
مساحة التخزين
|
timestamp [ (p) ] [ without time zone ]
|
التاريخ والتوقيت (بدون المنطقة الزمنية)
|
4713 قبل الميلاد
|
294276 بعد الميلاد
|
8 بايت
|
timestamp [ (p) ] with time zone
|
التاريخ والتوقيت مع المنطقة الزمنية
|
4713 قبل الميلاد
|
294276 بعد الميلاد
|
8 بايت
|
date
|
التاريخ بدون التوقيت
|
4713 قبل الميلاد
|
5874897 بعد الميلاد
|
4 بايت
|
time [ (p) ] [ without time zone ]
|
التوقيت بدون التاريخ
|
00:00:00
|
24:00:00
|
8 بايت
|
time [ (p) ] with time zone
|
التوقيت بدون التاريخ مع المنطقة الزمنية
|
00:00:00+1459
|
24:00:00-1459
|
12 بايت
|
interval [ fields ] [ (p) ]
|
مجال زمنيّ
|
-178000000 سنة
|
178000000 سنة
|
16 بايت
|
إذ إن المتحول p يعبّر عن عدد الخانات الكسرية في حقل الثواني.
أنواع البيانات المنطقية Boolean
النوع
|
الوصف
|
مساحة التخزين
|
boolean
|
تقبل قيمة TRUE أو FALSE
|
بايت واحد
|
في محرك البيانات Oracle
أنواع البيانات العددية Numeric
النوع
|
الوصف
|
number(p,s)
|
يعبّر الرمز p عن قيمة الدقة أي عدد الخانات المسموحة الإجمالية للعدد ويعبّر الرمز s عن عدد الخانات المسموحة ما بعد الفاصلة العشرية
|
numeric(p,s)
|
يعبّر الرمز p عن قيمة الدقة أي عدد الخانات المسموحة الإجمالية للعدد ويعبّر الرمز s عن عدد الخانات المسموحة ما بعد الفاصلة العشرية
|
float
|
لتخزين الأعداد بوجود الفاصلة العشرية
|
dec(p,s)
|
يعبّر الرمز p عن قيمة الدقة أي عدد الخانات المسموحة الإجمالية للعدد ويعبّر الرمز s عن عدد الخانات المسموحة ما بعد الفاصلة العشرية
|
decimal(p,s)
|
يعبّر الرمز p عن قيمة الدقة أي عدد الخانات المسموحة الإجمالية للعدد ويعبّر الرمز s عن عدد الخانات المسموحة ما بعد الفاصلة العشرية
|
integer
|
لتخزين الأعداد الصحيحة
|
int
|
لتخزين الأعداد الصحيحة
|
smallint
|
لتخزين الأعداد الصحيحة
|
real
|
بدقة 6 خانات عشرية
|
double precision
|
بدقة 15 خانة عشرية
|
أنواع البيانات المحرفية Character
النوع
|
الوصف
|
char(size)
|
سلسلة نصية ثابتة الطول بطول أقصى size
|
nchar(size)
|
سلسلة نصية ثابتة الطول بطول أقصى size
|
nvarchar2(size)
|
سلسلة نصية متغيرة الطول بطول أقصى size
|
varchar2(size)
|
سلسلة نصية متغيرة الطول بطول أقصى size
|
long
|
سلسلة نصية متغيرة الطول
|
raw
|
سلسلة من الخانات الثنائية binary متغيرة الطول
|
long raw
|
سلسلة من الخانات الثنائية binary متغيرة الطول
|
أنواع بيانات التاريخ والتوقيت Date and Time
النوع
|
الوصف
|
timestamp (precision)
|
لتخزين التاريخ والتوقيت بدقة precision للثانية
|
timestamp (precision) with timezone
|
لتخزين التاريخ والتوقيت بدقة precision للثانية مع اعتبار المنطقة الزمنية
|
interval year (year precision) to month
|
تحديد مجال يُعرَّف بالسنوات والأشهر بدقة precision للسنوات
|
interval day (precision) to second (sec_precision)
|
تحديد مجال يُعرَّف بالأيام والثواني بدقة precision للأيام، ودقة sec_precision للثواني
|
في محرك البيانات SQLite
يمتاز محرك البيانات SQLite بقلّة أنواع بياناته، وهي:
النوع
|
الوصف
|
INTEGER
|
لتخزين الأعداد الصحيحة
|
REAL
|
لتخزين الأعداد مع الفاصلة العشرية
|
NUMERIC
|
لتخزين القيم المنطقية boolean والتاريخ والتوقيت
|
TEXT
|
لتخزين السلاسل النصية
|
إذ يُمكن أيضًا تخزين بيانات التاريخ والتوقيت بنوع البيانات TEXT بالشكل "YYYY-MM-DD HH:MM:SS.SSS"
في محرك البيانات SQL Server
البيانات العددية المحدَّدة
النوع
|
بداية المجال
|
نهاية المجال
|
bigint
|
-9,223,372,036,854,775,808
|
9,223,372,036,854,775,807
|
int
|
-2,147,483,648
|
2,147,483,647
|
smallint
|
-32,768
|
32,767
|
tinyint
|
0
|
255
|
bit
|
0
|
1
|
decimal
|
-10^38 +1
|
10^38 -1
|
numeric
|
-10^38 +1
|
10^38 -1
|
money
|
-922,337,203,685,477.5808
|
+922,337,203,685,477.5807
|
smallmoney
|
-214,748.3648
|
+214,748.3647
|
البيانات العددية التقريبيّة
النوع
|
بداية المجال
|
نهاية المجال
|
float
|
-1.79E + 308
|
1.79E + 308
|
real
|
-3.40E + 38
|
3.40E + 38
|
بيانات التاريخ والتوقيت
النوع
|
بداية المجال
|
نهاية المجال
|
datetime
|
1 كانون الثاني 1753
|
31 كانون الأول 9999
|
smalldatetime
|
1 كانون الثاني 1900
|
6 حزيران 2079
|
date
|
لتخزين التاريخ فقط
|
time
|
لتخزين التوقيت فقط
|
بيانات السلاسل النصية المحرفية
النوع
|
الوصف
|
char
|
يصل لطولٍ أقصى 8,000 محرف (طول ثابت من محارف non-Unicode)
|
varchar
|
يصل لطولٍ أقصى 8,000 محرف (طول متغير من محارف non-Unicode)
|
varchar(max)
|
يصل لطولٍ أقصى 231 محرف، وبطول متغير من محارف non-Unicode
|
text
|
بطولٍ متغيّر من محارف non-Unicode بطول أقصى 2,147,483,647 محرف
|
بيانات السلاسل النصّية المحرفيّة وفق Unicode
النوع
|
الوصف
|
nchar
|
يصل لطولٍ أقصى 4,000 محرف (طول ثابت من محارف Unicode)
|
nvarchar
|
يصل لطولٍ أقصى 4,000 محرف (طول متغير من محارف Unicode)
|
nvarchar(max)
|
يصل لطولٍ أقصى 231 محرف وبطول متغير من محارف Unicode
|
ntext
|
بطولٍ متغير من محارف Unicode بطول أقصى 1,073,741,823 محرف
|
البيانات الثنائية
النوع
|
الوصف
|
binary
|
يصل لطولٍ أقصى 8,000 بايت (طول ثابت من البيانات الثنائية)
|
varbinary
|
يصل لطولٍ أقصى 8,000 بايت (طول متغير من البيانات الثنائية)
|
varbinary(max)
|
يصل لطولٍ أقصى 231 بايت وبطول متغير من البيانات الثنائية
|
image
|
بطولٍ متغير من البيانات الثنائية، بطول أقصى 2,147,483,647 بايت
|
مصادر