Блог вопиющего в пустыне
Попробовал на битриксе реализовать возможность просмотра через веб-интерфейс результатов тестирования, используя при этом форму из его компонентов (bitrix:main.feedback). Но оказалось, что эта форма обратной связи и предназначена только для отправки сообщений через сайт, а не для получения данных из базы. Полюбопытствуйте.
В данный сборник включаю комментарии пользователей новостных инфоресурсов, объем которых всего одно-два предложения, но попадают они, что называется, не в бровь, а в глаз.
Зацените.
Здесь выкладываю опусы из мира закупок, а также делюсь опытом в сайтостроении и в других сферах виртуального мира.
Может кому пригодится .
На страничке размещены виртуальные туры по усадьбе А.К.Толстого, мемориальному комплексу «Хацунь», Юдиновскому историко-археологическому музею. Эти красивые туры присутствовали на сайте областного краеведческого музея, но, по-видимому, были утрачены при обновлении сайта.
Полюбуйтесь красотами.
Данный сервис предоставляет возможность подключиться через веб-интерфейс к базе данных, находящейся на MS SQL сервере и вывести на веб-страничку результаты запроса.
Попробуйте.
Экспорт таблицы из базы MSSQL и её импорт в базу MySQL
Просмотров : 328 | Комментариев : 0
На этапе экспорта таблицы работаем с SQL Server Management Studio.
1) запускаем SQL Server Management Studio и ПКМ по нужной базе. Задачи-Экспортировать данные. В окне «Выбор источника данных» оставить всё как есть и нажать «Далее».
2) в форме «Выбор назначения» из раскрывающегося списка «Назначение» выбрать «Microsoft Excel». Нажать «Обзор» и указать файл «.xls», в который будет копироваться таблица (данный пустой файл «.xls» надо создать заранее). Нажать «Далее».
3) в окне «Выбор копирования таблицы или запроса» оставить «Скопировать данные из одной или нескольких таблиц». «Далее».
4) в окне «Выбор исходных таблиц и представлений» отметить нужную таблицу. Нажать «Далее».
5) в окне «Просмотр сопоставления типов данных» нажать «Далее».
6) в окне «Сохранение и запуск пакета» нажать «Далее».
7) в окне «Выполнение прошло успешно» нажать «Закрыть».
Открываем полученную таблицу в Excel и нажимаем «Сохранить как». Выбираем «Тип файла: CSV (разделители-запятые) (*.csv)». Сохранить.
Если на данной стадии попытаемся импортировать csv-таблицу в базу MySQL, то с большой вероятностью получим следующий ответ:
Мастер импорта информирует, что csv-таблица не в кодировке utf-8. Чтобы изменить кодировку используем утилиту Notepad++. Кодировки — Преобразовать в UTF-8 — Сохранить.
На этапе импорта таблицы работаем с MySQL Workbench 8.0 CE.
1) Коннектимся к MySQL-сервер. ПКМ по базе, в которую будем импортировать csv-таблицу. В раскрывшемся меню выбираем «Table Data Import Wizard».
2) жмем «Browse. «. Указываем наш csv-файл. «Next».
3) в форме «Select Destination» оставляем всё как есть и нажимаем «Next».
4) если с кодировкой всё в порядке, то форма «Configure Import Settings» будет иметь следующий вид:
5) дождаться когда отработает форма «Import Data». По окончании не забыть в Workbench 8.0 кликнуть ПКМ по нашей базе и выбрать «Refresh All». Таблица появиться в базе.

- Комментарии
Импорт данных из Excel в SQL Server или базу данных Azure
Импортировать данные из файлов Excel в SQL Server или базу данных SQL Azure можно несколькими способами. Некоторые методы позволяют импортировать данные за один шаг непосредственно из файлов Excel. Для других методов необходимо экспортировать данные Excel в виде текста (CSV-файла), прежде чем их можно будет импортировать.
В этой статье перечислены часто используемые методы и содержатся ссылки для получения дополнительных сведений. Однако в ней не указано полное описание таких сложных инструментов и служб, как SSIS или Фабрика данных Azure. Дополнительные сведения об интересующем вас решении доступны по ссылкам ниже.
Список методов
Существует несколько способов импорта данных из Excel. Для использования некоторых из этих инструментов может понадобиться установка SQL Server Management Studio (SSMS).
Для импорта данных из Excel можно использовать следующие средства:
| Сначала экспортировать в текст (SQL Server и база данных SQL) | Непосредственно из Excel (только в локальной среде SQL Server) |
|---|---|
| Мастер импорта неструктурированных файлов | мастер импорта и экспорта SQL Server |
| Инструкция BULK INSERT | Службы SQL Server Integration Services |
| BCP | Функция OPENROWSET |
| Мастер копирования (Фабрика данных Azure) | |
| Фабрика данных Azure. |
Если вы хотите импортировать несколько листов из книги Excel, обычно нужно запускать каждое из этих средств отдельно для каждого листа.
Дополнительные сведения см. в разделе Ограничения и известные проблемы загрузки данных в файлы Excel или из них.
Мастер импорта и экспорта
Импортируйте данные напрямую из файлов Excel с помощью мастера импорта и экспорта SQL Server. Вы также можете сохранить параметры в виде пакета SQL Server Integration Services (SSIS), который можно настроить и повторно использовать позже.

- В SQL Server Management Studio подключитесь к экземпляру SQL Server Компонент Database Engine.
- Разверните узел Базы данных.
- Щелкните базу данных правой кнопкой мыши.
- Выберите Задачи.
- Выберите Импортировать данные или Экспортировать данные:

Дополнительные сведения см. в следующих статьях:
- Запуск мастера импорта и экспорта SQL Server
- Приступая к работе с простым примером мастера импорта и экспорта
Службы Integration Services (SSIS)
Если вы работали с SQL Server Integration Services (SSIS) и не хотите запускать мастер импорта и экспорта SQL Server, создайте пакет SSIS, который использует в потоке данных источник «Excel» и назначение «SQL Server».
Дополнительные сведения см. в следующих статьях:
- Источник Excel
- Назначение SQL Server
Чтобы научиться создавать пакеты SSIS, см. руководство How to Create an ETL Package (Как создать пакет ETL).

OPENROWSET и связанные серверы
В базе данных SQL Azure невозможно импортировать данные непосредственно из Excel. Сначала необходимо экспортировать данные в текстовый файл (CSV).
Поставщик ACE (прежнее название — поставщик Jet), который подключается к источникам данных Excel, предназначен для интерактивного клиентского использования. Если поставщик ACE используется на сервере SQL Server, особенно в автоматизированных процессах или процессах, выполняющихся параллельно, вы можете получить непредвиденные результаты.
Распределенные запросы
Импортируйте данные напрямую из файлов Excel в SQL Server с помощью функции Transact-SQL OPENROWSET или OPENDATASOURCE . Такая операция называется распределенный запрос.
В базе данных SQL Azure невозможно импортировать данные непосредственно из Excel. Сначала необходимо экспортировать данные в текстовый файл (CSV).
Перед выполнением распределенного запроса необходимо включить параметр ad hoc distributed queries в конфигурации сервера, как показано в примере ниже. Дополнительные сведения см. в статье ad hoc distributed queries Server Configuration Option (Параметр конфигурации сервера «ad hoc distributed queries»).
sp_configure 'show advanced options', 1; RECONFIGURE; GO sp_configure 'ad hoc distributed queries', 1; RECONFIGURE; GO
В приведенном ниже примере кода данные импортируются из листа Excel Sheet1 в новую таблицу базы данных с помощью OPENROWSET .
USE ImportFromExcel; GO SELECT * INTO Data_dq FROM OPENROWSET('Microsoft.ACE.OLEDB.12.0', 'Excel 12.0; Database=C:\Temp\Data.xlsx', [Sheet1$]); GO
Ниже приведен тот же пример с OPENDATASOURCE .
USE ImportFromExcel; GO SELECT * INTO Data_dq FROM OPENDATASOURCE('Microsoft.ACE.OLEDB.12.0', 'Data Source=C:\Temp\Data.xlsx;Extended Properties=Excel 12.0'). [Sheet1$]; GO
Чтобы добавить импортированные данные в существующую таблицу, а не создавать новую, используйте синтаксис INSERT INTO . SELECT . FROM . вместо синтаксиса SELECT . INTO . FROM . из предыдущих примеров.
Для обращения к данным Excel без импорта используйте стандартный синтаксис SELECT . FROM . .
Дополнительные сведения о распределенных запросах см. в следующих статьях:
- Распределенные запросы (распределенные запросы по-прежнему поддерживаются в SQL Server 2019 г. (15.x), но документация по этой функции не была обновлена.)
- OPENROWSET
- OPENDATASOURCE
Связанные серверы
Кроме того, можно настроить постоянное подключение от SQL Server к файлу Excel как к связанному серверу. В примере ниже данные импортируются из листа Excel Data на существующем связанном сервере EXCELLINK в новую таблицу базы данных SQL Server с именем Data_ls .
USE ImportFromExcel; GO SELECT * INTO Data_ls FROM EXCELLINK. [Data$]; GO
Вы можете создать связанный сервер из SQL Server Management Studio (SSMS) или запустив системную хранимую процедуру sp_addlinkedserver , как показано в следующем примере.
DECLARE @RC INT; DECLARE @server NVARCHAR(128); DECLARE @srvproduct NVARCHAR(128); DECLARE @provider NVARCHAR(128); DECLARE @datasrc NVARCHAR(4000); DECLARE @location NVARCHAR(4000); DECLARE @provstr NVARCHAR(4000); DECLARE @catalog NVARCHAR(128); -- Set parameter values SET @server = 'EXCELLINK'; SET @srvproduct = 'Excel'; SET @provider = 'Microsoft.ACE.OLEDB.12.0'; SET @datasrc = 'C:\Temp\Data.xlsx'; SET @provstr = 'Excel 12.0'; EXEC @RC = [master].[dbo].[sp_addlinkedserver] @server, @srvproduct, @provider, @datasrc, @location, @provstr, @catalog;
Дополнительные сведения о связанных серверах см. в следующих статьях:
- Создание связанных серверов
- OPENQUERY
Дополнительные примеры и сведения о связанных серверах и распределенных запросах см. в следующей статье:
Предварительное требование — сохранение данных Excel как текст
Чтобы использовать другие методы, описанные на этой странице (инструкцию BULK INSERT, средство BCP или фабрику данных Azure), сначала экспортируйте данные Excel в текстовый файл.
В Excel выберите Файл | Сохранить как, а затем выберите Тип файла назначения Текст (с разделителями табуляции) (*.txt) или CSV (с разделителями-запятыми) (*.csv).
Если вы хотите экспортировать несколько листов из книги, выделите каждый лист и повторите эту процедуру. Команда Сохранить как экспортирует только активный лист.
Чтобы оптимизировать использование средств импорта, сохраняйте листы, которые содержат только заголовки столбцов и строки данных. Если сохраненные данные содержат заголовки страниц, пустые строки, заметки и пр., позже при импорте данных вы можете получить непредвиденные результаты.
Мастер импорта неструктурированных файлов
Импортируйте данные, сохраненные как текстовые файлы, выполнив инструкции на страницах мастера импорта неструктурированных файлов.
Как было описано выше в разделе Предварительное требование, необходимо экспортировать данные Excel в виде текста, прежде чем вы сможете импортировать их с помощью мастера импорта неструктурированных файлов.
Дополнительные сведения о мастере импорта неструктурированных файлов см. в разделе Мастер импорта неструктурированных файлов в SQL.
Команда BULK INSERT
BULK INSERT — это команда Transact-SQL, которую можно выполнить в SQL Server Management Studio. В приведенном ниже примере данные загружаются из файла Data.csv с разделителями-запятыми в существующую таблицу базы данных.
Как было описано выше в разделе Предварительное требование, необходимо экспортировать данные Excel в виде текста, прежде чем вы сможете использовать BULK INSERT для их импорта. BULK INSERT не может считывать файлы Excel напрямую. С помощью команды BULK INSERT можно импортировать CSV-файл, который хранится локально или в хранилище BLOB-объектов Azure.
USE ImportFromExcel; GO BULK INSERT Data_bi FROM 'C:\Temp\data.csv' WITH ( FIELDTERMINATOR = ',', ROWTERMINATOR = '\n' ); GO
Дополнительные сведения и примеры для SQL Server и База данных SQL см. в следующих статьях:
- Массовый импорт данных с помощью инструкции BULK INSERT или OPENROWSET(BULK. )
- BULK INSERT
Средство BCP
BCP — это программа, которая запускается из командной строки. В приведенном ниже примере данные загружаются из файла Data.csv с разделителями-запятыми в существующую таблицу базы данных Data_bcp .
Как было описано выше в разделе Предварительное требование, необходимо экспортировать данные Excel в виде текста, прежде чем вы сможете использовать BCP для их импорта. BCP не может считывать файлы Excel напрямую. Используется для импорта в SQL Server или базу данных SQL из текстового файла (CSV), сохраненного в локальном хранилище.
Для текстового файла (CSV), хранящегося в хранилище BLOB-объектов Azure, используйте BULK INSERT или OPENROWSET. Примеры см. в разделе Пример.
bcp.exe ImportFromExcel..Data_bcp in "C:\Temp\data.csv" -T -c -t ,
Дополнительные сведения о BCP см. в следующих статьях:
- Массовый импорт и экспорт данных с помощью программы bcp
- Программа bcp
- Подготовка данных к массовому экспорту или импорту
Мастер копирования (ADF)
Импортируйте данные, сохраненные как текстовые файлы, с помощью пошаговой инструкции мастера копирования Фабрики данных Azure (ADF).
Как было описано выше в разделе Предварительное требование, необходимо экспортировать данные Excel в виде текста, прежде чем вы сможете использовать фабрику данных Azure для их импорта. Фабрика данных не может считывать файлы Excel напрямую.
Дополнительные сведения о мастере копирования см. в следующих статьях:
- Мастер копирования фабрики данных
- Руководство. Создание конвейера с действием копирования с помощью мастера копирования фабрики данных.
Фабрика данных Azure
Если вы уже работали с фабрикой данных Azure и не хотите запускать мастер копирования, создайте конвейер с действием копирования из текстового файла в SQL Server или Базу данных SQL Azure.
Как было описано выше в разделе Предварительное требование, необходимо экспортировать данные Excel в виде текста, прежде чем вы сможете использовать фабрику данных Azure для их импорта. Фабрика данных не может считывать файлы Excel напрямую.
Дополнительные сведения об использовании этих источников и приемников Фабрики данных см. в следующих статьях:
- Файловая система
- SQL Server
- База данных SQL Azure
Сведения о копировании данных с помощью фабрики данных Azure см. в следующих статьях:
- Перемещение данных с помощью действия копирования
- Руководство. Создание конвейера с действием копирования с помощью портала Azure
Распространенные ошибки
Microsoft.ACE.OLEDB.12.0″ не зарегистрирован
Эта ошибка возникает из-за того, что поставщик OLEDB не установлен. Установите его через Распространяемый пакет ядра СУБД Microsoft Access 2010. Не забудьте установить 64-разрядную версию, если Windows и SQL Server — 64-разрядные.
Полный текст ошибки.
Msg 7403, Level 16, State 1, Line 3 The OLE DB provider "Microsoft.ACE.OLEDB.12.0" has not been registered.
Не удалось создать экземпляр поставщика OLE DB «Microsoft.ACE.OLEDB.12.0» для связанного сервера «(null)».
Это означает, что microsoft OLEDB не настроен должным образом. Чтобы устранить проблему, выполните приведенный ниже код Transact-SQL.
EXEC sp_MSset_oledb_prop N'Microsoft.ACE.OLEDB.12.0', N'AllowInProcess', 1; EXEC sp_MSset_oledb_prop N'Microsoft.ACE.OLEDB.12.0', N'DynamicParameters', 1;
Полный текст ошибки.
Msg 7302, Level 16, State 1, Line 3 Cannot create an instance of OLE DB provider "Microsoft.ACE.OLEDB.12.0" for linked server "(null)".
32-разрядный поставщик OLE DB «Microsoft.ACE.OLEDB.12.0» не может быть загружен в процессе на 64-разрядной версии SQL Server.
Это происходит, когда 32-разрядная версия поставщика OLD DB устанавливается вместе с 64-разрядной версией SQL Server. Чтобы устранить эту проблему, удалите 32-разрядную версию и вместо нее установите 64-разрядную версию поставщика OLE DB.
Полный текст ошибки.
Msg 7438, Level 16, State 1, Line 3 The 32-bit OLE DB provider "Microsoft.ACE.OLEDB.12.0" cannot be loaded in-process on a 64-bit SQL Server.
Поставщик OLE DB «Microsoft.ACE.OLEDB.12.0» для связанного сервера «(null)» сообщил об ошибке.
Не удалось проинициализировать объект источника данных поставщика OLE DB «Microsoft.ACE.OLEDB.12.0» для связанного сервера «(null)».
Обе эти ошибки обычно указывают на ошибку разрешений между процессом SQL Server и файлом. Убедитесь, что учетная запись, с которой выполняется служба SQL Server, имеет разрешение на полный доступ к файлу. Мы не рекомендуем импортировать файлы с настольного компьютера.
Полный текст ошибки.
Msg 7399, Level 16, State 1, Line 3 The OLE DB provider "Microsoft.ACE.OLEDB.12.0" for linked server "(null)" reported an error. The provider did not give any information about the error.
Msg 7303, Level 16, State 1, Line 3 Cannot initialize the data source object of OLE DB provider "Microsoft.ACE.OLEDB.12.0" for linked server "(null)".
Дальнейшие действия
- Приступая к работе с простым примером мастера импорта и экспорта
- Импорт данных из Excel или экспорт данных в Excel с помощью служб SQL Server Integration Services (SSIS)
- Программа bcp
- Перемещение данных с помощью действия копирования
SQL-Ex blog

Импорт данных из файла Excel в базу данных SQL Server с помощью Python
Добавил Sergey Moiseenko on Суббота, 8 апреля. 2023
Есть много способов загрузить данные из Excel в SQL Server, но иногда полезно использовать те инструменты, которые вы знаете лучше всего. В этой статье мы рассмотрим как загружать данные из Excel в SQL Server с помощью Python.
Используемые инструменты
- Экземпляр SQL Server
- Python, версия 3.11.0.
- Visual Studio Code, версия 1.72.1.
- Windows 10 PC или Windows Server 2019/2022.
Установка базы данных — создание тестовой базы данных и таблицы
Имеется несколько способов создать базу данных и таблицы в SQL Server, но ниже мы пройдем через использование SQLCMD для создания базы данных, если вы не имеете SQL Server Management Studio или Azure Data Studio.
Откройте командую строку Windows или запустите новую терминальную сессию из Visual Studio Code, нажав CTRL + SHFT + `.
Для запуска SQLCMD используйте следующую команду sqlcmd -S -E , чтобы подключиться к SQL Server. Параметр -S указывает экземпляр SQL Server, а параметр -E означает использование доверительного подключения.
sqlcmd -S -E
После аутентификации создадим новую базу данных следующей командой:
CREATE DATABASE ExcelData;
GO
Используйте эту команду SQLCMD для подтверждения создания базы данных:
SELECT name FROM sys.databases
GO
Изображение ниже представляет вывод команды, который показывает все имеющиеся базы данных этого экземпляра SQL Server.

Для переключения на новую базу данных используйте следующую команду:
USE ExcelData;
GO
Будет получено подтверждение изменение контекста, как показано ниже:

Теперь мы можем создать таблицу в этой базе данных.
CREATE TABLE EPL_LOG(ID int NOT NULL PRIMARY KEY);
GO
Отлично! Вы создали таблицу с именем EPL_LOG и первичным ключом ID. Нам нужен только первый столбец, а программа загрузки создаст остальные столбцы на основе файла-источника.
Конфигурация ядра
Ядро помечает начальную точку вашего приложения SQLAlchemy. Ядро описывает пул соединений и диалект для BDAPI (Python Database API Specification), спецификацию в рамках Python для определения общих шаблонов использования для всех пакетов подключения к базам данных, которые в свою очередь взаимодействуют с указанной базой данных.
Для открытия нового терминала нажмите CTRL + SHFT + ` в Visual Studio Code.
Используйте следующую команду npm в окне терминала для установки модуля SQLAlchemy.
npm install sqlalchemy
Создайте файл Python с именем DbConn.py, вставьте в него нижеприведенный код и измените источник данных на требуемый. Это — ядро SQLAlchemy, которое взаимодействует с SQL Server через Python.
import sqlalchemy as sa
from sqlalchemy import create_engine
import urllib
import pyodbc
conn = urllib.parse.quote_plus(
‘Data Source Name=MssqlDataSource;’
‘Driver=;’
‘Server=POWERSERVER\POWERSERVER;’
‘Database=ExcelData;’
‘Trusted_connection=yes;’
)
try:
coxn = create_engine(‘mssql+pyodbc:///?odbc_connect=<>‘.format(conn))
print(«Passed»)
Запись в SQL Server
Мы будем использовать Pandas, который является быстрым, гибким и легким в использовании инструментом с открытыми кодами для манипуляции и анализа данных, встроенным в язык программирования Python. Python может читать данные Excel в программе Python, используя функцию pandas.read_excel().
Для простоты этой демонстрации, сохраним файл Excel в папке проекта Visual Studio Code, чтобы нам не пришлось указывать путь. Это позволит вам игнорировать параметр io (любая валидная строка пути) функции read_excel().
Мы будем также использовать openpyxl в качестве движка для чтения файлов Excel. Выполните следующую команду pip в окне терминала, чтобы установить openpyxl.
pip install pandas openpyxl
Создайте еще один файл с именем ExcelToSQL.py, содержащий код ниже. Этот код будет читать файл Excel и записывать в созданную ранее таблицу базы данных.
//ExcelToSQL.py
from pandas.core.frame import DataFrame
import pandas as pd
from DbConn import coxn
df = pd.read_excel(‘sportsref_download.xlsx’, engine = ‘openpyxl’)
except:
pass
print(«Failed!»)
else:
print(«saved in the table»)
print(df)
Теперь щелкнем кнопку Play в верхнем правом углу окна Visual Studio Code для выполнения скрипта. В терминале появится вывод данных.

Для проверки сохранения данных в базе откройте SSMS и выберите данные из таблицы. Вы можете также использовать SQLCMD для подключения к экземпляру и выполнения следующего кода.
USE ExcelData;
GO
SELECT * FROM EPL_LOG
Изображение ниже показывает какие данные сейчас находятся в базе данных.

Заключение
Python выполняет большую работу, действуя как посредник между Excel и SQL Server. Вы можете транслировать любые статичные данные Excel в более гибкий набор данных, перемещая его в базу данных, которая обладает большей доступностью и легче интегрируется с другим системами.
Перемещайте данные Excel в SQL Server данным способом. Поскольку pandas сохраняет данные в DataFrame, ими легко манипулировать и изменять перед занесением в базу данных SQL Server.
Обратные ссылки
Нет обратных ссылок
Комментарии
Показывать комментарии Как список | Древовидной структурой
Автор не разрешил комментировать эту запись
Импортирование таблиц базы данных
Если у вас есть данные к проекту, вынесенные во внешнюю базу данных, мы рекомендуем импортировать их во встроенную базу данных AnyLogic для последующего использования в модели посредством запросов к таблицам базы данных AnyLogic.
В зависимости от типа вашей БД, следуйте одной из инструкций, приведенной ниже:
- Файл MS Excel / MS Access
- БД MS SQL Server
Импортирование из файла MS Access / MS Excel
Как импортировать из файла MS Excel или MS Access
- В панели Проекты щелкните правой кнопкой мыши по элементу модели База Данных и выберите Импортировать таблицы БД. из контекстного меню.

- Вы увидите диалоговое окно Импортировать таблицы БД. . Сначала выберите файл базы данных в панели Задайте настройки соединения, которая находится слева.
- В выпадающем списке Тип, оставьте значение по умолчанию: Excel/Access.
- Нажмите на кнопку Выбрать. Появится диалоговое окно Открыть.Найдите файл MS Excel / MS Access, который содержит данные. Щелкните по файлу два раза или выделите его и нажмите на кнопку Открыть чтобы выбрать файл.
- После этого, установите соединение с выбранным файлом. Нажмите на кнопку Показать список таблиц. AnyLogic постарается подключиться к указанной базе данных и показать список таблиц внешней базы данных в правой панели диалогового окна.
- В панели Выберите таблицу, которую вы будете импортировать установите флажки напротив таблиц, которые вы хотите импортировать в базу данных. На данном этапе вы можете изменить имена таблиц во встроенной базе данных AnyLogic (в столбце Имя в БД модели).

- Если вы предполагаете обновление данных во внешней БД, и хотите всегда иметь свежие данные в вашей модели, выберите опцию Обновлять данные при запуске модели. После выбора этой настройки, AnyLogic будет обновлять данные из внешней базы данных каждый раз, когда пользователь запускает модель. Вы можете выключить авто обновление в свойствах базы данных.
- В случае, когда таблицы с такими именами уже существуют в базе данных AnyLogic, вы увидите уведомление подобное тому, что изображено на скриншоте ниже. Вы можете либо заменить существующие таблицы теми, что из внешней базы данных, либо оставить существующие таблицы и использовать другие имена для импортируемых таблиц.

- Нажмите на кнопку OK. В панели Проекты разверните дерево элемента База Данных и вы увидите список таблиц, добавленных в AnyLogic.

Чтобы импортировать данные из таблицы Excel во внутреннюю базу данных модели
В AnyLogic вы можете заполнить таблицу во внутренней базе данных модели значениями из внешнего Excel-файла, используя любое из доступных кодовых полей — например, тело функции или действие агента.
Чтобы сделать это:
-
Получите доступ ко внутренней базе данных модели, создав экземпляр объекта ModelDatabase :
ModelDatabase modelDB = getEngine().getModelDatabase();
Database myFile = new Database( this , «A DB from Excel», «D:\Files\myDBFile.xls»)
modelDB.importFromExternalDB(myFile.getConnection(), «Sheet 1», «Internal DB — Excel Sheet 1», true , false );
Импортирование из БД MS SQL Server
Как импортировать из БД MS SQL Server
- В панели Проекты щелкните правой кнопкой мыши по элементу модели База Данных и выберите Импортировать таблицы БД. из контекстного меню.

- Вы увидите диалоговое окно Импортировать таблицы БД. . Сначала выберите файл базы данных в панели Задайте настройки соединения, которая находится слева.
- В выпадающем списке Тип выберите Сервер Microsoft SQL.
- Укажите хост в поле Хост, а в поле Имя базы данных укажите имя БД, к которой хотите получить доступ.
- Введите Логин и Пароль если их будет требовать БД.
- После этого, установите соединение с выбранным файлом. Нажмите на кнопку Показать список таблиц. AnyLogic постарается подключиться к указанной базе данных и показать список таблиц внешней базы данных в правой панели диалогового окна.
- В панели Выберите таблицу, которую вы будете импортировать установите флажки напротив таблиц, которые вы хотите импортировать в базу данных. На данном этапе вы можете редактировать автоматически созданные имена таблиц, которые будут созданы в базе данных AnyLogic (в столбце Имя в БД модели).
- Если вы предполагаете обновление данных во внешней БД, и хотите всегда иметь свежие данные в вашей модели, установите флажок напротив опции Обновлять данные при запуске модели. После выбора этой настройки, AnyLogic будет обновлять данные из внешней базы данных, когда запущенная модель впервые обращается к БД. Вы можете выключить авто-обновление в свойствах базы данных.
- В случае, когда таблицы с такими именами уже существуют в базе данных AnyLogic, вы увидите уведомление подобное тому, что изображено на скриншоте ниже. Вы можете либо заменить существующие таблицы теми, что из внешней базы данных, либо оставить существующие таблицы и использовать другие имена для импортируемых таблиц.

- Нажмите на кнопку OK. В панели Проекты разверните дерево элемента База Данных, чтобы увидеть список таблиц, добавленных в AnyLogic.

Как мы можем улучшить эту статью?
- Импортирование из файла MS Access / MS Excel
- Импортирование из БД MS SQL Server
