Как создать таблицу SQL с использованием столбцов excel?

Мне нужно помочь сгенерировать имя столбца из excel автоматически. Я думаю, что: мы можем сделать ниже коды:

CREATE TABLE [dbo].[Addresses_Temp] ( [FirstName] VARCHAR(20), [LastName] VARCHAR(20), [Address] VARCHAR(50), [City] VARCHAR(30), [State] VARCHAR(2), [ZIP] VARCHAR(10) ) 

через C #. Как узнать имя столбца из Excel?

 private void Form1_Load(object sender, EventArgs e) { ExcelToSql(); } void ExcelToSql() { string connectionString = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Source\MPD.xlsm;Extended Properties=""Excel 12.0;HDR=YES;"""; // if you don't want to show the header row (first row) // use 'HDR=NO' in the string string strSQL = "SELECT * FROM [Sheet1$]"; OleDbConnection excelConnection = new OleDbConnection(connectionString); excelConnection.Open(); // This code will open excel file. OleDbCommand dbCommand = new OleDbCommand(strSQL, excelConnection); OleDbDataAdapter dataAdapter = new OleDbDataAdapter(dbCommand); // create data table DataTable dTable = new DataTable(); dataAdapter.Fill(dTable); // bind the datasource // dataBingingSrc.DataSource = dTable; // assign the dataBindingSrc to the DataGridView // dgvExcelList.DataSource = dataBingingSrc; // dispose used objects if (dTable.Rows.Count > 0) MessageBox.Show("Count:" + dTable.Rows.Count.ToString()); dTable.Dispose(); dataAdapter.Dispose(); dbCommand.Dispose(); excelConnection.Close(); excelConnection.Dispose(); } 

Вы должны иметь возможность перебирать коллекцию столбцов DataTable, чтобы получить имена столбцов.

 System.Data.DataTable dt; dt = new System.Data.DataTable(); foreach(System.Data.DataColumn col in dt.Columns) { System.Diagnostics.Debug.WriteLine(col.ColumnName); } 

Должен ли он быть C #? Если вы хотите использовать Java, у меня были хорошие результаты с POI Apache: http://poi.apache.org/

Это не решение C # … это быстрое и грязное решение прямо из excel. Решение c # будет более надежным и позволит вам, скорее всего, указать его на целевой xls и дать ему ответы – это решение для вас, если вам нужны ответы быстро и у вас нет времени писать программу, или если кто-то не имеет среды разработки C # на своем компьютере.

Одним из возможных способов получения результатов, которые вы ищете, является:

  • выделите строку в excel, которая имеет заголовки столбцов
  • скопировать их
  • перейти на новый рабочий лист
  • правая ячейка ячейки A1
  • click paste-transpose
  • он вставляет их в формат столбцов
  • перейдите к B2 и вставьте эту формулу в:

    = CONCATENATE ("[", SUBSTITUTE (A1, "", ""), "] varchar (20),")

  • затем вставьте эту формулу вплоть до столбца заголовков столбцов

  • скопируйте результаты в SQL Server, затем добавьте верхнюю строку кода «CREATE TABLE [dbo]. [Addresses_Temp] ("

  • затем добавьте закрывающие круглые скобки

Что мы сделали:

  • мы получили все заголовки colunn из заголовка ROW и
  • превратили их в колонну
  • затем удалите все пробелы (если они являются заголовками заголовков нескольких слов) и
  • прикрепили к началу открытую скобку "[" и
  • прикрепленный к концу "] VARCHAR (20)," (остальная часть строки кода)

введите описание изображения здесь

  • Импортировать файл Excel на сервере Sql
  • Код для преобразования Excel в PDF с помощью VB.NET
  • Excel - обновление листка из запланированного отчета SSRS
  • SQL Server, количество просмотров просмотров
  • Вставка / обновление SQL с использованием большого файла Excel
  • Как автоматически отправлять SQL-запрос в электронную таблицу Excel через регулярные промежутки времени
  • только один запрос выбора отображается на листе excel
  • Как выполнить функцию Excel ROUNDUP в SQL Server 2005
  • Массовая вставка из специального листа рабочей книги Excel, имеющего более 280 столбцов
  • OPENDATASOURCE для чтения Excel
  • Лучший способ импорта файла csv или excel в SQL Server 2005 с использованием .net MVC view
  • Interesting Posts

    Является ли FALSE Excel бесконечной?

    Случайная '1004 заявленная или объектная ошибка' / '1004 PasteSpecial метод класса Range failed'

    Кто-нибудь сталкивался с Excel Paste – особыми искажающими данными в таблицах? (С использованием 16.0 для Win32)

    Экспортировать список списков C # в Excel

    Apache POI poi-3.7-beta1, как очистить файл .xlsx от кэш-памяти, проблема: после перезагрузки компьютера таблица обновлений POI из предыдущей загрузки .xlsx

    Ошибка фильтра таблицы макросов VBA

    Макрос Excel не копирует данные в нужные ячейки

    Условное форматирование с использованием AND в диапазоне

    Excel – Как отключить макрос неактивного листа

    VBA – найдите конкретное слово в столбце и скопируйте ячейку ниже на другом листе

    Перекрестная ссылка на ежемесячное чтение на еженедельное чтение

    Как найти строки анализа и ввести данные в таблицу

    Формула IF – EXCEL – получение данных из другой ячейки

    Excel сохраняет файл, но выдает ошибку при его открытии: «Мы нашли проблему с некоторым контентом в …»

    Сохранение данных в xlsx с выравниванием по левому краю

    Давайте будем гением компьютера.