كيفية استخدام Excel مع SQL Server مرتبط ملقمات ووزعت الاستعلامات

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

اضغط هنا لرابط المقالة باللغة الانجليزية306397
الموجز
يدعم Microsoft SQL Server اتصالات إلى مصادر بيانات OLE DB على استمرار أو حسب الاقتضاء. اتصال مستمر ويعرف ملقم مرتبط؛ اتصال مخصصة التي يتم إجراؤها من أجل استعلام واحد يعرف باسم استعلام موزع.

مصنفات Microsoft Excel هي نوع واحد من مصدر بيانات OLE DB يمكنك الاستعلام من خلال خادم SQL بهذه الطريقة. توضح هذه المقالة بناء جملة اللازمة لتكوين مصدر بيانات Excel على أنه ملقم مرتبط، بالإضافة إلى بناء الجملة الذي يجب استخدام استعلام موزع الاستعلامات مصدر بيانات Excel.
معلومات أخرى

الاستعلام عن مصدر بيانات Excel على ملقم مرتبط

يمكنك استخدام إدارة Studio SQL Server أو مدير المؤسسة، نظام تخزين الإجراء، SQL إدارة الوجهات السياحية (كائنات الإدارة الموزعة) أو SMO (كائنات إدارة ملقم SQL) لتكوين مصدر بيانات Excel كخادم SQL Server مرتبط. (تتوفر بيانات التزامات العضوية ل Microsoft SQL Server 2005.) في جميع هذه الحالات، يجب دوماً تعيين الخصائص الأربع التالية:
  • الاسم الذي تريده لاستخدام ملقم مرتبط.
  • OLE DB الموفر الذي سيتم استخدامه للاتصال.
  • مصدر البيانات أو اسم الملف والمسار الكامل لمصنف Excel.
  • سلسلة الموفر، الذي يعرف الهدف كمصنف Excel. بشكل افتراضي، يتوقع موفر Jet قاعدة بيانات Access.
كما يتوقع إجراء النظام المخزن sp_addlinkedserver الخاصية @srvproduct ، التي يمكن أن تكون أي قيمة سلسلة.

ملاحظة: إذا كنت تستخدم SQL Server 2005، يجب تحديد قيمة غير فارغة للخاصية اسم المنتج في Studio إدارة ملقم SQL أو الخاصية @srvproduct في الإجراء المخزن لمصدر بيانات Excel.

استخدام Studio إدارة ملقم SQL أو إدارة المؤسسة لتكوين مصدر بيانات Excel على أنه ملقم مرتبط

Studio إدارة ملقم SQL (SQL Server 2005)
  1. في Studio إدارة ملقم SQL، قم بتوسيع كائنات الخادم في مستكشف الكائنات.
  2. انقر بالزر الأيمن على الملقمات المرتبطةومن ثم انقر فوق ملقم مرتبط جديد.
  3. في الجزء الأيمن، حدد الصفحة العامة ، وثم اتبع الخطوات التالية:
    1. في مربع النص الأول، اكتب أي اسم ملقم مرتبط.
    2. حدد <b00> </b00>مصدر بيانات الخيار.
    3. موفر من القائمة، انقر فوق موفر Microsoft Jet 4.0 OLE DB.
    4. في المربع " اسم المنتج "، اكتب Excel اسم مصدر بيانات OLE DB.
    5. في مربع " مصدر البيانات "، اكتب اسم الملف والمسار الكامل لملف Excel.
    6. في المربع سلسلة الموفر ، اكتب Excel 8.0 لمصنف Excel 2002 أو Excel 2000 أو Excel 97.
    7. انقر فوق موافق لإنشاء ملقم مرتبط جديد.
ملاحظة: في SQL Server إدارة Studio، لا يمكن توسيع اسم ملقم مرتبط جديد لعرض قائمة بالكائنات التي تحتوي على الملقم.
إدارة المؤسسة (SQL Server 2000)
  1. في "إدارة المؤسسة"، انقر فوق لتوسيع المجلد الأمان .
  2. انقر بالزر الأيمن على الملقمات المرتبطةومن ثم انقر فوق ملقم مرتبط جديد.
  3. في علامة التبويب " عام "، اتبع الخطوات التالية:
    1. في مربع النص الأول، اكتب أي اسم ملقم مرتبط.
    2. في المربع نوع الملقم ، انقر فوق مصدر بيانات آخر.
    3. في القائمة اسم موفر الخدمة ، انقر فوق موفر Microsoft Jet 4.0 OLE DB.
    4. في مربع " مصدر البيانات "، اكتب اسم الملف والمسار الكامل لملف Excel.
    5. في المربع سلسلة الموفر ، اكتب Excel 8.0 لمصنف Excel 2002 أو Excel 2000 أو Excel 97.
    6. انقر فوق موافق لإنشاء ملقم مرتبط جديد.
  4. انقر لتوسيع اسم ملقم مرتبط جديد لتوسيع الكائنات التي تحتوي على ثيليست.
  5. تحت اسم ملقم مرتبط جديد، انقر فوق " جداول". لاحظ ظهور أوراق العمل والنطاقات المسماة في رايتباني.

استخدام إجراء مخزن لتكوين مصدر بيانات Excel على أنه ملقم مرتبط

يمكنك أيضا استخدام إجراء النظام المخزن sp_addlinkedserver لتكوين مصدر بيانات Excel على أنه ملقم مرتبط:
DECLARE @RC intDECLARE @server nvarchar(128)DECLARE @srvproduct nvarchar(128)DECLARE @provider nvarchar(128)DECLARE @datasrc nvarchar(4000)DECLARE @location nvarchar(4000)DECLARE @provstr nvarchar(4000)DECLARE @catalog nvarchar(128)-- Set parameter valuesSET @server = 'XLTEST_SP'SET @srvproduct = 'Excel'SET @provider = 'Microsoft.Jet.OLEDB.4.0'SET @datasrc = 'c:\book1.xls'SET @provstr = 'Excel 8.0'EXEC @RC = [master].[dbo].[sp_addlinkedserver] @server, @srvproduct, @provider, @datasrc, @location, @provstr, @catalog				
كما ذكر أعلاه، يتطلب هذا الإجراء المخزن قيمة سلسلة إضافية، إجبارية لوسيطة @srvproduct ، التي تظهر ك "اسم المنتج" في تكوين إدارة المؤسسة و Studio إدارة ملقم SQL. لا يتم استخدام الوسائط @location و @catalog .

استخدام SQL منظمات إدارة الوجهات السياحية لتكوين مصدر بيانات Excel على أنه ملقم مرتبط

يمكنك استخدام كائنات الإدارة الموزعة SQL لتكوين مصدر بيانات Excel على أنه ملقم مرتبط برمجياً من برنامج Microsoft Visual Basic أو لغة برمجة أخرى. يجب توفير نفس الحجج الأربع المطلوبة في تكوين إدارة المؤسسة و Studio إدارة ملقم SQL.
Private Sub Command1_Click()    Dim s As SQLDMO.SQLServer    Dim ls As SQLDMO.LinkedServer    Set s = New SQLDMO.SQLServer    s.Connect "(local)", "sa", "password"    Set ls = New SQLDMO.LinkedServer    With ls        .Name = "XLTEST_DMO"        .ProviderName = "Microsoft.Jet.OLEDB.4.0"        .DataSource = "c:\book1.xls"        .ProviderString = "Excel 8.0"    End With    s.LinkedServers.Add ls    s.CloseEnd Sub				

استخدام SMO لتكوين مصدر بيانات Excel على أنه ملقم مرتبط

في SQL Server 2005، يمكنك استخدام SQL Server إدارة الكائنات (SMO) لتكوين مصدر بيانات Excel على أنه ملقم مرتبط برمجياً. للقيام بذلك، يمكنك استخدام Microsoft Visual Basic.NET أو لغة برمجة أخرى. يجب توفير الوسيطات المطلوبة في تكوين Studio إدارة ملقم SQL. طراز كائن بيانات التزامات العضوية ويحل محل نموذج الكائن "كائنات الإدارة الموزعة" (SQL-DMO). لأن بيانات التزامات العضوية متوافق مع SQL Server الإصدار 7.0 أو SQL Server 2000 و SQL Server 2005، يمكنك أيضا استخدام بيانات التزامات العضوية لتكوين SQL Server 2000.
Imports Microsoft.SqlServer.Management.SmoImports Microsoft.SqlServer.Management.CommonPublic Class Form1    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click        Dim s As Server        Dim conn As ServerConnection        Dim ls As LinkedServer        conn = New ServerConnection("ServerName\InstanceName", "YourUesrName", "YourPassword")        s = New Server(conn)        Try            ls = New LinkedServer(s, "XLTEST_DMO")            With ls                .ProviderName = "Microsoft.Jet.OLEDB.4.0"                .ProductName = "Excel"                .DataSource = "c:\book1.xls"                .ProviderString = "Excel 8.0"            End With            ls.Create()            MessageBox.Show("New linked Server has been created.")        Catch ex As SmoException            MessageBox.Show(ex.Message)        Finally            ls = Nothing            If s.ConnectionContext.IsOpen = True Then                s.ConnectionContext.Disconnect()            End If        End Try    End SubEnd Class

الاستعلام عن مصدر بيانات Excel على ملقم مرتبط

بعد تكوين مصدر بيانات Excel كخادم مرتبط، يمكنك بسهولة الاستعلام بياناته من "محلل استعلام" أو تطبيق عميل آخر. على سبيل المثال، تستخدم التعليمة البرمجية التالية لاسترداد صفوف البيانات التي يتم تخزينها في الورقة 1 ملف Excel، ملقم مرتبط التي يمكنك تكوينها باستخدام SQL منظمات إدارة الوجهات السياحية:
SELECT * FROM XLTEST_DMO...Sheet1$				
يمكنك أيضا استخدام OPENQUERY لاستعلام ملقم مرتبط Excel بطريقة "عبور"، كما يلي:
SELECT * FROM OPENQUERY(XLTEST_DMO, 'SELECT * FROM [Sheet1$]')				
الوسيطة الأولى التي يتوقع OPENQUERY هو اسم الخادم المرتبط. محددات مطلوبة لأسماء أوراق العمل، كما هو موضح أعلاه.

يمكنك أيضا الحصول على قائمة الجداول المتوفرة على ملقم مرتبط Excel باستخدام الاستعلام التالي:
EXECUTE SP_TABLES_EX 'XLTEST_DMO'				

الاستعلام عن مصدر بيانات Excel باستخدام استعلامات الموزعة

يمكنك استخدام استعلامات SQL Server الموزعة والدالة OPENDATASOURCE أو OPENROWSET للاستعلام القليلة الوصول إلى مصادر بيانات Excel على أساس مخصص.

ملاحظة: إذا كنت تستخدم SQL Server 2005، تأكد من تمكين الخيار استعلامات المؤقتة الموزعة باستخدام تكوين منطقة سطح خادم SQL، كما في المثال التالي:
SELECT * FROM OPENDATASOURCE('Microsoft.Jet.OLEDB.4.0',   'Data Source=c:\book1.xls;Extended Properties=Excel 8.0')...Sheet1$				
لاحظ أن يستخدم OPENROWSET جملة شائع للوسيطة الثانية ("موفر سلسلة"):
SELECT * FROM OPENROWSET('Microsoft.Jet.OLEDB.4.0',    'Excel 8.0;Database=c:\book1.xls', Sheet1$)				
بناء الجملة التي قد تتوقع مطور كائنات بيانات ActiveX "(ADO) لاستخدامه في الوسيطة الثانية (" موفر سلسلة ") باستخدام OPENROWSET:
SELECT * FROM OPENROWSET('Microsoft.Jet.OLEDB.4.0',    'Data Source=c:\book1.xls;Extended Properties=Excel 8.0', Sheet1$)				
بناء الجملة هذا يرفع من موفر Jet الخطأ التالي:
تعذر العثور على ISAM القابل للتثبيت.
ملاحظة: يحدث هذا الخطأ أيضا في حالة إدخال مصدر البيانات بدلاً من مصدر البيانات. على سبيل المثال، الوسيطة التالية غير صحيحة:
SELECT * FROM OPENROWSET('Microsoft.Jet.OLEDB.4.0', 'DataSource=c:\book1.xls;Extended Properties=Excel 8.0', Sheet1$) 				
مراجع
لربط ملقمات SQL Server وتوزيع استعلامات استخدام موفر OLE DB، المبادئ التوجيهية العامة وتطبيق يحذر حول استخدام ADO مع Excel هنا. لمزيد من المعلومات، انقر فوق رقم المقالة التالي لعرضها في "قاعدة معارف Microsoft":
257819 كيفية استخدام ADO مع بيانات Excel من Visual Basic أو VBA
لمزيد من المعلومات حول كائنات إدارة ملقم SQL، قم بزيارة موقع شبكة مطوري Microsoft (MSDN) التالي على الويب:لمزيد من المعلومات حول كيفية تمكين الخيار استعلامات المؤقتة الموزعة ، قم بزيارة موقع Msdn التالي:

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

خصائص

رقم الموضوع: 306397 - آخر مراجعة: 03/15/2015 03:04:00 - المراجعة: 7.0

Microsoft SQL Server 2005 Standard Edition, Microsoft SQL Server 2005 Enterprise Edition, Microsoft SQL Server 2005 Developer Edition, Microsoft SQL Server 2005 Workgroup Edition, Microsoft SQL Server 2000 Standard Edition, Microsoft SQL Server 2000 Enterprise Edition, Microsoft SQL Server 2000 Developer Edition, Microsoft SQL Server 2000 Personal Edition, Microsoft SQL Server 2000 Workgroup Edition, Microsoft SQL Server 7.0 Standard Edition

  • kbsqlsetup kbdatabase kbhowto kbjet kbmt KB306397 KbMtar
تعليقات