يقوم نوع البيانات "تمديد التاريخ/الوقت" بتخزين معلومات التاريخ والوقت، ويشبه نوع البيانات "التاريخ/الوقت"، ولكنه يوفر نطاقًا أكبر للتاريخ ودقة جزئية أعلى وتوافق مع نوع التاريخ "التاريخ والوقت 2 في SQL Server". عند استيراد بيانات Access أو ربطها بـ SQL Server، يمكنك التخطيط بشكل متناسق لحقل "تمديد التاريخ والوقت في Access" ليصبح عمود "التاريخ والوقت 2 في SQL Server". للحصول على مزيد من المعلومات، اطلع على التاريخ والوقت 2 (المعاملات-SQL).
تحذير عند إنشاء التعبيرات واستخدام دوالّ التاريخ والوقت استنادًا إلى نوع البيانات "تمديد التاريخ والوقت" في Access، قد تفقد الدقة في العمليات الحسابية أو تواجه مشاكل أخرى في النتائج. نحن على علم بهذه المشكلة، ونخطط للحصول على التعبيرات والدوالّ بشكل أفضل في الإصدارات القادمة. كحلّ بديل، يمكنك إنشاء استعلام مباشر لاستخدام دوالّ التعبيرات والتاريخ والوقت المكافئة في SQL Server. للحصول على مزيد من المعلومات، اطلع على مقارنة Access SQL بـ SQL Server TSQL.
في هذه المقالة
مقارنة بين نوعيْ البيانات "التاريخ والوقت" و"تمديد التاريخ والوقت" |
مقارنة بين نوعيْ البيانات "التاريخ والوقت" و"تمديد التاريخ والوقت"
تلخص الجداول التالية الاختلافات الهامة بين نوعيْ البيانات.
السمة |
التاريخ والوقت |
تمديد التاريخ والوقت |
---|---|---|
القيمة الدنيا |
100-01-01 00:00:00 |
0001-01-01 00:00:00 |
القيمة القصوى |
9999-12-31 23:59:59.999 |
9999-12-31 23:59:59.9999999 |
الدقة |
0.001 ثانية |
1 نانو ثانية |
الحجم |
النقطة العائمة للدقة المزدوجة |
السلسلة المرمزة بـ 42 بايت |
استخدام نوع البيانات "تمديد التاريخ والوقت"
توضح المعلومات التالية اعتبارات الاستخدام الهامة.
طريقة عرض تصميم الجدول للاستفادة من نطاق البيانات الأكبر والدقة الأعلى، يمكنك إضافة حقل إلى جدول Access. كما يمكنك تحويل نوع البيانات "التاريخ والوقت" إلى "تمديد التاريخ والوقت" طريقة عرض تصميم الجدول. يتم دعم استخدام هذا النوع من البيانات كحقل مفتاح أساسي. للحصول على مزيد من المعلومات، اطلع على إنشاء جدول وإضافة حقول.
إدخال التاريخ والوقت إدخال قيم التاريخ والوقت مماثل لنوع البيانات "التاريخ والوقت"، إلا أنه يمكنك أيضًا إدخال قيمة كسرية من النانو ثانية. على سبيل المثال:
-
تنسيق الإدخال: الشهر/اليوم/السنة الساعة:الدقيقة:الثانية.نانو ثانية
-
مثال: 06/15/1215 09:25:3.234
إذا وُجِدت أكثر من 7 قيم كسرية من النانو ثانية، فسوف يتم تقريبها إلى 7 أرقام. للتحكم في عرض القيم الكسرية من النانو ثانية، افتح الجدول، وحدد على الشريط الحقول، وفي مجموعة التنسيق حدد زيادة الأرقام العشرية أو تقليل الأرقام العشرية .
التنسيق يستخدم كلٌ من نوعيْ البيانات "تمديد التاريخ والوقت" و"التاريخ والوقت" سلاسل تنسيق قياسية متشابهة من التاريخ العام والتاريخ الطويل والتاريخ الأوسط والتاريخ القصير والوقت الطويل والوقت الأوسط والوقت القصير، كما يدعم كلاهما التنسيق المخصص. بالنسبة إلى نوع البيانات "تمديد التاريخ والوقت"، تدعم التنسيقات القياسية المستندة إلى الوقت الدقة الكسرية للنانو ثانية كذلك. يتم ضبط التنسيق الافتراضي لنوع البيانات "تمديد التاريخ والوقت" على تنسيقيْ التاريخ العام والوقت الطويل، ويتبع الخيارات المحددة في الإعدادات الإقليمية في Windows. يمكنك أيضًا التحكم في تنسيق الدقة الكسرية باستخدام الخاصية القيم العشرية لتحديد عدد الأرقام الموجودة إلى يسار الفاصلة العشرية (1: 7).
الربط والاستيراد يمكنك كذلك الربط بقواعد البيانات التي تحتوي على نوع بيانات مطابق، مثل نوع البيانات "التاريخ والوقت 2 في SQL Server"، أو الاستيراد منها. يتم دعم قواعد بيانات SQL Server الإصدار 2014 أو الإصدارات الأحدث. يتطلب نوع البيانات "تمديد التاريخ والوقت" استخدام برنامج التشغيل Microsoft ODBC لإصدار SQL Server 11 أو الإصدارات الأحدث. نوصيك باستخدام برنامج التشغيل Microsoft ODBC 13.1 لـ SQL Server. يتم أيضًا دعم استخدام OLE DB. للحصول على مزيد من المعلومات، اطلع على دعم نوع البيانات للحصول على التحسينات المتعلقة بالتاريخ والوقت في ODBC واستخدام ميزات التاريخ والوقت المحسّنة (OLE DB).
النماذج والتقارير يمكنك إضافة نوع البيانات "تمديد التاريخ والوقت" إلى نموذج أو تقرير. في النموذج، يمكنك استخدام منتقي التاريخ وقناع الإدخال لإدخال تاريخ باستخدام النطاق الأكبر، ولكن ليس بالدقة الكسرية للنانو ثانية.
دعم التعبير يدعم نوع البيانات "تمديد التاريخ والوقت" دوالّ SQL التجميعية وتقييم التعبير. على سبيل المثال، باستخدام التاريخ والوقت المُسجَّلين كحقل يحتوي على نوع البيانات "تمديد التاريخ والوقت":
المهمة |
مثال |
النتيجة |
---|---|---|
البحث عن القيمة الدنيا |
الحد الأدنى (التاريخ والوقت المُسجَّلان) |
التاريخ والوقت الأقرب ضمن النطاق |
استخراج الشهر |
الشهر (التاريخ والوقت المُسجَّلان) |
اسم الشهر، مثل "يناير" |
إضافة يوم واحد |
[التاريخ والوقت المُسجَّلان]+1 |
سيصبح الثلاثاء يوم الأربعاء |
اعتبارات التوافق مع الإصدارات السابقة
نوع البيانات "تمديد التاريخ والوقت" غير متوافق مع الإصدارات السابقة من Microsoft Access. إذا تم استخدام النوع داخل جدول Access محلي، فلن تتمكن إصدارات Access التي لا تتضمن الميزة من فتح قاعدة البيانات.
يمكنك تمكين نوع البيانات "تمديد التاريخ/الوقت" أو تعطيله لربط العمليات واستيرادها باستخدام خيار الوصول إلى قاعدة البيانات الحاليدعم نوع البيانات الموسعة للتاريخ/الوقت للجداول المرتبطة/الجدولة. للمزيد من المعلومات، راجع تعيين خيارات المستخدم لقاعدة البيانات الحالية.
استخدام نوع البيانات "تمديد التاريخ والوقت" كسلسلة في VBA
تستخدم أمثلة VBA التالية طرق كائنات الوصول إلى البيانات (DAO) لعرض نوع البيانات "تمديد التاريخ والوقت" وإدخاله وتقييمه استنادًا إلى الجدول أدناه.
المعرّف |
بيانات جهاز البيانات الطرفي (DTE) |
البيانات الطرفية (DT) |
1 |
1/1/2 1:01:03.1234567 ص |
2001/1/1 |
اسم الجدول: جدول جهاز البيانات الطرفي
نوع بيانات المعرّف: الترقيم التلقائي نوع البيانات لجهاز البيانات الطرفي: تمديد التاريخ والوقت نوع البيانات لجهاز البيانات الطرفي: التاريخ والوقتمثال: عرض التاريخ والوقت
يعرض المثال التالي التاريخ والوقت. التنسيق المستخدم هو الشهر/اليوم/السنة الساعة:الدقيقة:الثانية.النانو ثانية في ساعة بتقويم 24 ساعة. التنسيق غير قابل للتخصيص.
Dim db As Database
Dim rs As Recordset
Set db = CurrentDb
Set rs = db.OpenRecordset("DTETable")
Do Until rs.EOF
Debug.Print rs!DTETable
rs.MoveNext
Loop
النتيجة يعرض Access: 01/01/0002 01:01:03.1234567.
مثال: إدخال التاريخ والوقت
يدخل المثال التالي التاريخ والوقت باستخدام تنسيق السلسلة. جميع تنسيقات التاريخ والوقت القياسية مدعومة.
Dim db As Database
Dim rs As Recordset
Set db = CurrentDb
Set rs = db.OpenRecordset("DTETable")
With CurrentDb.OpenRecordset("DTETable")
.AddNew
![DTEData] = "1/1/9999 1:1:1.0123 AM"
![DTData] = #1/1/2001#
.Update
End With
النتيجة يضيف Access صفًا جديدًا (المعرّف = 2):
المعرّف |
بيانات جهاز البيانات الطرفي (DTE) |
البيانات الطرفية (DT) |
1 |
1/1/2 1:01:03.1234567 ص |
2001/1/1 |
2 |
1/1/9999 1:01:01.0123000 ص |
2001/1/1 |
مثال: تقييم تعبير استعلام
يستخدم المثال التالي الدالة Day لاستخراج رقم اليوم من حقول التاريخ والوقت.
Dim db As Database
Dim rs As Recordset
Set db = CurrentDb
Set rs = db.OpenRecordset("SELECT Day(DTEData) as day FROM DTETable")
Do Until rs.EOF
Debug.Print "The day of the month is: "&rs!day
rs.MoveNext
Loop
النتيجة يعرض Access:
أحد أيام الشهر هو: 1
أحد أيام الشهر هو: 1