SQL استعلام تشغيل ضد مصنف Excel إرجاع اقتطاع نص الميدان
-
22-07-2019 - |
سؤال
وأنا على التوالي استعلام SQL SELECT من خلال اتصال ADO إلى مصنف Excel 2007 مع التعليمات البرمجية التالية (باستخدام نسخة مخصصة من فبسكريبت)
dim ado, rs
set ado = CreateObject("ADODB.Connection")
ado.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=workbook.xlsx;Extended Properties=""Excel 12.0 Xml;HDR=YES;IMEX=1"";"
ado.open()
set rs = ado.execute("SELECT * FROM [sheet1$]")
والذي هو straighforward. والمشكلة هي أن أي خلية يحتوي على نص أطول من 255 حرفا يتم اقتطاع. هل هناك أي طريقة للتغلب على هذه؟ هناك خاصية في سلسلة الاتصال التي ستدعم هذا أم هو خيار أنا بحاجة إلى تغيير في وثيقة اكسل نفسها؟ لقد حاولت وظيفة MSSQL في CAST () ولكن هذه القضايا العادلة خطأ عند تنفيذها.
وأي مساعدة سيكون موضع تقدير كبير.
المحلول
وأعتقد أنك تقوم بتشغيل في متغير وجود قيود منذ فترة طويلة في توفير الوصول إلى البيانات في Excel. انظر http://support.microsoft.com/default.aspx ؟ SCID = كيلوبايت، EN-US؛ 189897 للحصول على مثال أو جوجل لآلاف أكثر
نصائح أخرى
وبدلا من محاولة استخدام CAST ()، هل حاولت استخدام وظيفة CONVERT ()؟