Openrowset in SQL Server

هل احتجت مرة أن تأتى ببيانات من مصدر بيانان لتسجلها فى مصدر أخر كفكرة بسيطة : عندك بيانات تحصلها عليها من ملف أكسيل موجود فى سيرفر يتيح عن طريق الملف الحصول مثلاً على أسعار أسهم أو أسعار العملات طبعاً لتحركات مؤشر البورصة كيف نجعل السيرفر يتصل على مصدر البيانات هذا وهو ملف الأكسيل ويحصل منه على القيم
أنها الدالة OPENROWSET

وتكون صيغتها كالتالي

OPENROWSET ( ‘provider_name’,
{ ‘datasource’; ‘user_id’; ‘password’ | ‘provider_string’ },
{ [ catalog.][schema.]object | ‘query’ }
)

ولنبسطها هكذا ونشرحها :

OPENROWSET ( ‘provider_name’, ‘provider_string’, ‘query’ )

يكون تطبيقنا على ملف Excel وبالطبع سيكون provider الخاص بذلك هو OLEDB

كمثال أنسخ أى ملف Excel على القرص C مباشرة بحيث سيكون مسار العمل عليه وأن يكون به بعض البيانات لنستعرضها

SELECT *
FROM OPENROWSET(‘Microsoft.Jet.OLEDB.4.0’,
‘Excel 8.0;Database=C:\1.xls’,
‘SELECT * FROM [Sheet1$]’)

حيث كتبنا


‘provider_name’ = ‘Microsoft.Jet.OLEDB.4.0’

‘provider_string’ = ‘Excel 8.0;Database=C:\1.xls’

‘query’ = ‘SELECT * FROM [Sheet1$]’

 

حيث Sheet1$ هو اسم الصفحة الأولي من صفحة الأكسيل ويمكن أن يكون اسمها ” الصفحة “

لو كان الأوفيس عربي أو يكون لها اسم خاص لو وضعت لها اسم ، إذن تنادي عليها باسمها مع وضع علامة $

ويمكن أن تنادي علي نطاق معين مثلاً من A:Z بدلاً من اسم الصفحة

منقول للاخ بدر مينا

Advertisements

شاركنا بارد

إملأ الحقول أدناه بالمعلومات المناسبة أو إضغط على إحدى الأيقونات لتسجيل الدخول:

WordPress.com Logo

أنت تعلق بإستخدام حساب WordPress.com. تسجيل خروج   / تغيير )

صورة تويتر

أنت تعلق بإستخدام حساب Twitter. تسجيل خروج   / تغيير )

Facebook photo

أنت تعلق بإستخدام حساب Facebook. تسجيل خروج   / تغيير )

Google+ photo

أنت تعلق بإستخدام حساب Google+. تسجيل خروج   / تغيير )

Connecting to %s