Как программно создать таблицу MS Access в SQL Server с помощью SSIS?

Я получаю ежемесячные обновления данных для базы данных SQL, отправленной мне в базе данных ACCESS, около 30 таблиц, следующих за этим шаблоном, самая большая таблица содержит около 40 000 строк.

CREATE TABLE [dbo].[TABLE_NAME_HERE] (
[title] nvarchar (255) NULL, 
[classification1] nvarchar (255) NULL, 
[classification2] nvarchar (255) NULL, 
[1986] float NULL, 
[1987] float NULL, 
[1988] float NULL, 
[1989] float NULL, 
[1990] float NULL, 
[1991] float NULL, 
[1992] float NULL, 
[1993] float NULL, 
[1994] float NULL, 
[1995] float NULL, 
[1996] float NULL, 
[1997] float NULL, 
[1998] float NULL, 
[1999] float NULL, 
[2000] float NULL, 
[2001] float NULL, 
[2002] float NULL, 
[2003] float NULL, 
[2004] float NULL, 
[2005] float NULL, 
[2006] float NULL, 
[2007] float NULL, 
[2008] float NULL, 
[2009] float NULL, 
[2010] float NULL, 
[2011] float NULL, 
[2012] float NULL, 
[2013] float NULL, 
[2014] float NULL, 
[2015] float NULL, 
[2016] float NULL, 
[2017] float NULL, 
[2018] float NULL, 
[2019] float NULL, 
[2020] float NULL, 
[2021] float NULL, 
[2022] float NULL, 
[2023] float NULL, 
[2024] float NULL, 
[2025] float NULL)

В настоящее время у нас есть пакет DTSX, который загружает эту таблицу, однако каждый раз (раз в год) они добавляют еще один столбец, а в пакете DTSX содержатся подробные данные столбца.

У нас нет времени или бюджета для перепрограммирования заявленных приложений, хотя я согласен, что существует много способов хранения этих данных.

Я хотел бы, чтобы пакет DTSX автоматически удалял таблицу на сервере SQL, CREATE a TABLE, которая соответствует той базе данных ACCESS и загружает данные.

Это возможно?

sql-server,ms-access,ssis,

0

Ответов: 2


0

Возможно ли изменить структуру таблицы? Например, если у вас была дочерняя таблица с столбцом «Год», а другая - «Значение», тогда не было бы необходимости добавлять новые столбцы в годовом исчислении. Рекомендуется хранить данные в строках таблиц, а не в именах столбцов.

Также возможно, например, использовать ADOX в MS-Acceess VBA для циклического просмотра коллекции полей таблицы Access и из нее создать новую таблицу на SQL Server. Код будет что-то вроде этой ссылки, но ему потребуется изменить работу с подключением SQL Server и т. Д.


0

Одним из вариантов в DTS является создание новой таблицы при импорте. Но, поскольку предыдущая статья предполагает, что вам следует пересмотреть проблему, обычно нет необходимости (и она не рекомендуется) менять таблицу. Когда есть новый столбец, вы должны изменить код своей программы, если новый столбец не будет полностью бесполезен. В этом случае просто отпустите столбец перед импортом, и вы снова прекратите. Если столбец полезен, то как вы будете использовать его без написания кода, который ссылается на него (после создания / импорта таблицы) ???

SQL-сервер, MS-Access, SSIS,
Похожие вопросы