أنت غير متصل حاليًا، وفي انتظار الإنترنت الخاص بك ليقوم بإعادة الاتصال

كيفية استيراد البيانات من Excel إلى SQL Server

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

اضغط هنا لرابط المقالة باللغة الانجليزية321686
الموجز
توضح هذه المقالة خطوة بخطوة كيفية استيراد بيانات من أوراق عمل Microsoft Excel إلى قواعد بيانات Microsoft SQL Server باستخدام أساليب متنوعة.

back to the top

وصف للتقنية

النماذج في هذا المقال استيراد بيانات Excel باستخدام:
  • خدمات تحويل البيانات SQL Server (DTS)
  • Microsoft SQL Server 2005 تكامل الخدمات (SSIS)
  • ملقمات SQL Server مرتبط
  • استعلامات SQL Server الموزعة
  • "كائنات بيانات ActiveX" (ADO) وموفر Microsoft OLE DB ل SQL Server
  • ADO وموفر Microsoft OLE DB ل Jet 4.0
back to the top

متطلبات

توضح القائمة التالية الأجهزة الموصى بها برامج البنية الأساسية للشبكة وحزم الخدمات المطلوبة:
  • مثيل المتوفرة من Microsoft SQL Server 7.0 أو Microsoft SQL Server 2000 أو Microsoft SQL Server 2005
  • Microsoft Visual Basic 6.0 للعينات ADO التي تستخدم Visual Basic
أجزاء من هذه المادة أن نفترض أنك على دراية بالمواضيع التالية:
  • خدمات تحويل البيانات
  • ملقمات المرتبطة واستعلامات الموزعة
  • تطوير ADO في Visual Basic
back to the top

نماذج

استيراد مقابل إلحاق

عبارات SQL نموذج المستخدمة في هذه المقالة شرح استعلامات "إنشاء جدول" استيراد بيانات Excel إلى جدول SQL Server جديد باستخدام جملة SELECT... في... من بناء الجملة. يمكنك تحويل هذه البيانات للاستعلامات الإلحاقية باستخدام INSERT INTO... تحديد... من بناء الجملة أثناء متابعة مرجع الكائنات المصدر والوجهة كما هو موضح في نماذج التعليمات البرمجية هذه.

back to the top

استخدام DTS أو مباحث أمن الدولة

يمكنك استخدام معالج استيراد SQL Server البيانات تحويل خدمات (DTS) أو SQL Server استيراد وتصدير معالج استيراد بيانات Excel إلى جداول ملقم SQL. عند التنقل خلال المعالج وتحديد جداول المصدر في Excel، تذكر أن أسماء كائنات Excel التي يتم إلحاقها بعلامة الدولار ($) تمثل أوراق العمل (على سبيل المثال، Sheet1$)، وأن أسماء الكائنات عادي دون علامة الدولار تمثل Excel نطاقات مسماة.

back to the top

استخدام ملقم مرتبط

لتبسيط الاستعلامات، يمكنك تكوين مصنف Excel كملقم مرتبط في SQL Server.للحصول على معلومات إضافية، انقر فوق رقم المقالة التالي لعرضها في "قاعدة معارف Microsoft":
306397 HOWTO: استخدام Excel مع SQL Server مرتبط ملقمات وتوزيع الاستعلامات
التعليمات البرمجية التالية باستيراد البيانات من ورقة العمل العملاء على ملقم مرتبط Excel "اكسسيلينك" إلى جدول SQL Server جديد يسمى XLImport1:
SELECT * INTO XLImport1 FROM EXCELLINK...[Customers$]				
يمكنك أيضا تنفيذ استعلام مقابل المصدر بطريقة عبور باستخدام OPENQUERY كما يلي:
SELECT * INTO XLImport2 FROM OPENQUERY(EXCELLINK,    'SELECT * FROM [Customers$]')				
back to the top

استخدام استعلامات الموزعة

إذا أردت عدم تكوين اتصال مستمر لمصنف Excel كملقم مرتبط، يمكنك استيراد البيانات لغرض معين باستخدام الدالة OPENROWSET أو في OPENDATASOURCE. نماذج التعليمات البرمجية التالية أيضا استيراد البيانات من ورقة عمل Excel العملاء إلى جداول ملقم SQL جديد:
SELECT * INTO XLImport3 FROM OPENDATASOURCE('Microsoft.Jet.OLEDB.4.0','Data Source=C:\test\xltest.xls;Extended Properties=Excel 8.0')...[Customers$]SELECT * INTO XLImport4 FROM OPENROWSET('Microsoft.Jet.OLEDB.4.0','Excel 8.0;Database=C:\test\xltest.xls', [Customers$])SELECT * INTO XLImport5 FROM OPENROWSET('Microsoft.Jet.OLEDB.4.0','Excel 8.0;Database=C:\test\xltest.xls', 'SELECT * FROM [Customers$]')				
back to the top

استخدام ADO و SQLOLEDB

عندما تكون متصلاً بملقم SQL في تطبيق ADO باستخدام Microsoft OLE DB لخادم SQL (SQLOLEDB)، يمكنك استخدام نفس بناء الجملة "استعلام موزع" من استخدام استعلامات الموزعة مقطع لاستيراد بيانات Excel إلى SQL Server.

نموذج التعليمات البرمجية Visual Basic 6.0 التالي يتطلب إضافة مرجع مشروع إلى "كائنات بيانات ActiveX" (ADO). نموذج التعليمات البرمجية هذا يوضح أيضا كيفية استخدام OPENROWSET و OPENDATASOURCE عبر اتصال SQLOLEDB.
    Dim cn As ADODB.Connection    Dim strSQL As String    Dim lngRecsAff As Long    Set cn = New ADODB.Connection    cn.Open "Provider=SQLOLEDB;Data Source=<server>;" & _        "Initial Catalog=<database>;User ID=<user>;Password=<password>"    'Import by using OPENDATASOURCE.    strSQL = "SELECT * INTO XLImport6 FROM " & _        "OPENDATASOURCE('Microsoft.Jet.OLEDB.4.0', " & _        "'Data Source=C:\test\xltest.xls;" & _        "Extended Properties=Excel 8.0')...[Customers$]"    Debug.Print strSQL    cn.Execute strSQL, lngRecsAff, adExecuteNoRecords    Debug.Print "Records affected: " & lngRecsAff    'Import by using OPENROWSET and object name.    strSQL = "SELECT * INTO XLImport7 FROM " & _        "OPENROWSET('Microsoft.Jet.OLEDB.4.0', " & _        "'Excel 8.0;Database=C:\test\xltest.xls', " & _        "[Customers$])"    Debug.Print strSQL    cn.Execute strSQL, lngRecsAff, adExecuteNoRecords    Debug.Print "Records affected: " & lngRecsAff    'Import by using OPENROWSET and SELECT query.    strSQL = "SELECT * INTO XLImport8 FROM " & _        "OPENROWSET('Microsoft.Jet.OLEDB.4.0', " & _        "'Excel 8.0;Database=C:\test\xltest.xls', " & _        "'SELECT * FROM [Customers$]')"    Debug.Print strSQL    cn.Execute strSQL, lngRecsAff, adExecuteNoRecords    Debug.Print "Records affected: " & lngRecsAff    cn.Close    Set cn = Nothing				
back to the top

استخدام ADO وموفر Jet

يستخدم النموذج في المقطع السابق ADO مع موفر SQLOLEDB للاتصال إلى وجهة الاستيراد Excel SQL. يمكنك أيضا استخدام موفر OLE DB ل Jet 4.0 للاتصال بمصدر Excel.

يمكن لمشغل قاعدة بيانات Jet الإشارة قواعد البيانات الخارجية في عبارات SQL باستخدام بناء جملة خاص يحتوي على ثلاثة أشكال مختلفة:
  • [المسار الكامل لقاعدة بيانات Microsoft Access]. [اسم الجدول]
  • [اسم عصام;سلسلة الاتصال ISAM]. [اسم الجدول]
  • [ODBC;سلسلة اتصال ODBC]. [اسم الجدول]
يستخدم هذا المقطع تنسيق الثالث لإجراء اتصال ODBC لقاعدة بيانات SQL الخادم الوجهة. يمكنك استخدام اسم مصدر بيانات ODBC (DSN) أو سلسلة اتصال dsn:
DSN:    [odbc;DSN=<DSN name>;UID=<user>;PWD=<password>]DSN-less:   [odbc;Driver={SQL Server};Server=<server>;Database=<database>;       UID=<user>;PWD=<password>]				
نموذج التعليمات البرمجية Visual Basic 6.0 التالي يتطلب إضافة مرجع مشروع إلى ADO. نموذج التعليمات البرمجية هذا يوضح كيفية استيراد بيانات Excel إلى SQL Server عبر اتصال ADO باستخدام موفر Jet 4.0.
    Dim cn As ADODB.Connection    Dim strSQL As String    Dim lngRecsAff As Long    Set cn = New ADODB.Connection    cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _        "Data Source=C:\test\xltestt.xls;" & _        "Extended Properties=Excel 8.0"        'Import by using Jet Provider.    strSQL = "SELECT * INTO [odbc;Driver={SQL Server};" & _        "Server=<server>;Database=<database>;" & _        "UID=<user>;PWD=<password>].XLImport9 " & _        "FROM [Customers$]"    Debug.Print strSQL    cn.Execute strSQL, lngRecsAff, adExecuteNoRecords    Debug.Print "Records affected: " & lngRecsAff            cn.Close    Set cn = Nothing				
يمكنك أيضا استخدام بناء الجملة هذا الذي يدعم موفر Jet لاستيراد بيانات Excel إلى قواعد بيانات Microsoft Access أخرى أو الوصول المتسلسل المفهرس (ISAM) أسلوب ("") قواعد بيانات سطح المكتب أو قواعد بيانات ODBC.

back to the top

استكشاف الأخطاء وإصلاحها

  • تذكر أن أسماء كائنات Excel التي يتم إلحاقها بعلامة الدولار ($) تمثل أوراق العمل (على سبيل المثال، Sheet1$) وأن أسماء الكائنات عادي تمثل Excel نطاقات مسماة.
  • في بعض الحالات، خاصة عند تعيين بيانات مصدر Excel باستخدام اسم الجدول بدلاً من استعلام تحديد الأعمدة في جدول SQL Server الوجهة يتم ترتيبها حسب الترتيب الهجائي.للحصول على معلومات إضافية حول هذه المشكلة مع موفر Jet، انقر فوق رقم المقالة التالي لعرضها في "قاعدة المعارف ل Microsoft":
    299484 PRB: الأعمدة بالترتيب الأبجدي عند استخدام ADOX لاسترداد أعمدة جدول Access
  • عند تحديد موفر Jet أن عمود Excel يحتوي على بيانات رقمية والنص المختلط، يحدد نوع البيانات "الأغلبية" موفر Jet وإرجاع قيم غير مطابقة القيم الخالية.للحصول على معلومات إضافية حول كيفية إيجاد حل بديل لهذه المشكلة، انقر فوق رقم المقالة التالي لعرضها في "قاعدة المعارف ل Microsoft":
    194124 PRB: إرجاع NULL باستخدام DAO OpenRecordset قيم Excel
back to the top
مراجع
للحصول على معلومات إضافية حول كيفية استخدام Excel كمصدر بيانات، انقر فوق رقم المقالة التالي لعرضها في "قاعدة المعارف ل Microsoft":
257819 HOWTO: استخدام ADO مع بيانات Excel من Visual Basic أو VBA
للحصول على معلومات إضافية حول كيفية نقل البيانات إلى Excel، انقر فوق أرقام المقالات التالية لعرضها في "قاعدة المعارف ل Microsoft":
295646 HOWTO: نقل البيانات من مصدر البيانات ADO إلى Excel باستخدام ADO
247412 INFO: أساليب لنقل البيانات إلى Excel من Visual Basic
246335 HOWTO: نقل البيانات من مجموعة سجلات ADO إلى Excel باستخدام التنفيذ التلقائي
319951 كيفية: نقل البيانات إلى Excel باستخدام خدمات تحويل البيانات SQL Server
306125 كيفية: استيراد البيانات من ملقم SQL إلى Microsoft Excel
back to the top
excel sql ado dts sqloledb jet

تحذير: تمت ترجمة هذه المقالة تلقائيًا

خصائص

رقم الموضوع: 321686 - آخر مراجعة: 01/02/2016 03:18:00 - المراجعة: 6.0

Microsoft Excel 2000 Standard Edition, Microsoft SQL Server 2000 Standard Edition, Microsoft SQL Server 2000 64-bit Edition, Microsoft SQL Server 7.0 Standard Edition, Microsoft Excel 2002 Standard Edition, Microsoft Excel 97 Standard Edition, Microsoft SQL Server 2005 Developer Edition, Microsoft SQL Server 2005 Enterprise Edition, Microsoft SQL Server 2005 Standard Edition, Microsoft SQL Server 2005 Workgroup Edition

  • kbhowtomaster kbjet kbmt KB321686 KbMtar
تعليقات
> /html>/c1.microsoft.com/c.gif?DI=4050&did=1&t=">/html>1&t=">/html>html>/body>amp;t=">