CSV (أو ورقة في XLS) إلى SQL لإنشاء (وإدراج) بيانات باستخدام .Net؟
سؤال
هل لدى أي شخص تقنية لإنشاء أوامر إنشاء جدول SQL (وإدراج البيانات) بشكل عملي من ملف CSV (أو ورقة في ملف .xls)؟
لدي نظام قاعدة بيانات تابع لجهة خارجية وأرغب في ملؤه بالبيانات من ملف CSV (أو ورقة في ملف XLS) ولكن المستورد الذي تم توفيره لا يمكنه إنشاء بنية الجدول تلقائيًا أثناء قيامه بالاستيراد.يحتوي ملف CSV الخاص بي على الكثير من الجداول التي تحتوي على الكثير من الأعمدة، لذا أرغب في أتمتة عملية إنشاء الجدول بالإضافة إلى استيراد البيانات إن أمكن ولكني غير متأكد من كيفية إنشاء بيان الإنشاء...
المحلول
في خادم SQL يكون الأمر سهلاً مثل
SELECT * INTO NewTablenNmeHere
FROM OPENROWSET( 'Microsoft.Jet.OLEDB.4.0',
'Excel 8.0;Database=C:\testing.xls','SELECT * FROM [Sheet1$]')
نصائح أخرى
أوصي بإلقاء نظرة على com.csvkit.إنه csvsql يمكن للوظيفة إنشاء عبارات إدراج جدول، أو حتى تنفيذها لك، من معظم مصادر البيانات الجدولية.
BULK
INSERT CSVTest
FROM 'c:\csvtest.txt'
WITH
(
FIELDTERMINATOR = ',',
ROWTERMINATOR = '\n'
)
لسوء الحظ، أنا أستخدم SQLEngine للأنظمة المدمجة، لذا فهو لا يدعم مصادر بيانات BULK INSERT أو OLEDB، ولهذا السبب كنت أفكر في اتباع نهج إنشاء عبارات SQL.