سؤال

ما أسماء الأعمدة لا يمكن استخدامها عند إنشاء جدول بيانات Excel باستخدام ADO.

يجب بيان أن يخلق الصفحة في جدول بيانات:

CREATE TABLE [TableName] (Column string, Column2 string);

لقد وجدت أن استخدام اسم عمود من Date أو Container سوف يولد خطأ عندما يتم تنفيذ العبارة.

لا أحد يملك كاملة (أو الجزئي) قائمة من الكلمات التي يمكن أن تستخدم عمود الأسماء ؟ هذا هو للاستخدام في يحركها المستخدم والبيئة سيكون من الأفضل إلى "إصلاح" الأعمدة من تحطم الطائرة.

عملي حول هذه هو استبدال أي أحداثا من Date أو Container مع Date_ و Container_ على التوالي.

هل كانت مفيدة؟

المحلول

يمكنك استخدام الأقواس لأي fieldname ، على سبيل المثال:

CREATE TABLE [TableName] ([Date] string, [Container] string)

كامل سبيل المثال:

using (OleDbConnection conn = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\\temp\\test.xls;Extended Properties='Excel 8.0;HDR=Yes'"))
{
  conn.Open();
  OleDbCommand cmd = new OleDbCommand("CREATE TABLE [TableName] ([Date] string, [Container] string)", conn);
  cmd.ExecuteNonQuery();
}

نصائح أخرى

هنا هي الكلمات المحجوزة MS الاستعلام:

http://support.microsoft.com/kb/125948

الخلية قواعد الأسماء:

http://ezinearticles.com/?Rules-For-Naming-Cells-in-Microsoft-Excel&id=218607

يبدو أكثر مثل قضية مع SQL الكلمات المحجوزة.هذا هو قائمة جيدة

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top