powered by simpleCommunicator - 2.0.50     © 2025 Programmizd 02
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Доступ в файл базы Access по средствам .Net Core
25 сообщений из 26, страница 1 из 2
Доступ в файл базы Access по средствам .Net Core
    #39836012
AlexKM2020
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день, коллеги.
Собственно сам вопрос.
Мне нужно прочитать MS Access в моем приложении .NET Core. Проблема в том, что OleDb больше не поддерживается в .NET Core и сказать:
using System.Data;
using System.Data.OleDb;
можно, но оно работать не будет и объект подключения:
System.Data.OleDb.OleDbConnection conn = new System.Data.OleDb.OleDbConnection()
формироваться не будет, возвращает ошибку:
Серьезность Код Описание Проект Файл Строка Состояние подавления
Ошибка CS0234 Тип или имя пространства имен "OleDbConnection" не существует в пространстве имен "System.Data.OleDb" (возможно, отсутствует ссылка на сборку). Import C:\Data\Import\Import\Import\Program.cs

Приложение должно быть максимально портируемым, кроссплатформенным, потому и .NET Core и ODBC тоже использовать нельзя.

Коллеги, подскажите, есть какое-нибудь ещё решение для вынимания данных из файлf базы Access с последующей записью в MSSQL?

Пробовал (VS 2017): https://github.com/bubibubi/EntityFrameworkCore.Jet
Не компилируется, не встаёт ...

Спасибо.
...
Рейтинг: 0 / 0
Доступ в файл базы Access по средствам .Net Core
    #39836015
Фотография ЕвгенийВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У тебя один выход, портировать Access на sql server, последний запускается по Linux и там есть express версия.
...
Рейтинг: 0 / 0
Доступ в файл базы Access по средствам .Net Core
    #39836021
AlexKM2020
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Евгений, Спасибо за ответ!
Вот я тоже ничего не нашел ..
Скажите, а средствами языка JAVA можно реализовать такой автономный модуль?
Прошу прощенья, не рассматривал подобную возможность, но если можно, придется смотреть в ту сторону.
...
Рейтинг: 0 / 0
Доступ в файл базы Access по средствам .Net Core
    #39836024
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
jdbc есть конечно
...
Рейтинг: 0 / 0
Доступ в файл базы Access по средствам .Net Core
    #39836075
Фотография Relic Hunter
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Konst_Onejdbc есть конечноэто спецификация, а есть ли реализация (а.к.а. драйвер Access) на линух сильно сомневаюсь ))
...
Рейтинг: 0 / 0
Доступ в файл базы Access по средствам .Net Core
    #39836104
Фотография ЕвгенийВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Relic Hunter,
есть мост через odbc и платные реализации чисто на жабе
...
Рейтинг: 0 / 0
Доступ в файл базы Access по средствам .Net Core
    #39836124
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
"Нафига козе баян, если есть гармошка?"
Access тут каким боком тогда? Какой во всём этом смысл, если вы пишите, что всё должно быть кросс-платформенное, ну значит имеет имеет смысл использовать не Access, а другую СУБД, к примеру, SQLite или еще чего.
Сделать миграцию с Access на SQLite (с точки зрения схемы базы данных, без отчётов и прочей муры) не особо сложная задача
...
Рейтинг: 0 / 0
Доступ в файл базы Access по средствам .Net Core
    #39836134
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Доступ в файл базы Access по средствам .Net Core
    #39836144
Фотография Relic Hunter
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А что за приложение-то? WinForms ))? Так его на Коре тоже не завезли))
...
Рейтинг: 0 / 0
Доступ в файл базы Access по средствам .Net Core
    #39836230
AlexKM2020
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
hVostt, спасибо за хорошую ссылку.
Relic Hunter, именно Access, потому как дорогущая амерская прилага крутится на нем и менять нельзя ничего, лицензию потеряем

Подумал в сторону ODBC - using System.Data.Odbc;

Скачал через NuGet
Не работает, говорит:
System.Data.Odbc.OdbcException (0x80131937): ERROR [IM002] [Microsoft][Диспетчер драйверов ODBC] Источник данных не найден и не указан драйвер, используемый по умолчанию

Хотя ODBC драйвер есть, скрин прилагаю.

Вот код:
using System;
using System.Data.Odbc;

namespace ImportPIMS
{
class Program
{
static void Main(string[] args)
{
string connetionString = null;
connetionString = "Driver={Microsoft Access Driver (*.mdb,*.accdb)};DBQ=C:\\Data\\input.mdb";
OdbcConnection cnn = new OdbcConnection(connetionString);
try
{
cnn.Open();
Console.WriteLine("Connection Open!");
Console.ReadKey();
cnn.Close();
}
catch (Exception ex)
{
Console.WriteLine("Can not open connection!");
Console.WriteLine(ex);
Console.ReadKey();
}
}
}
}

Коллеги, есть мысли, что не так делаю?

Зарание спасибо.
...
Рейтинг: 0 / 0
Доступ в файл базы Access по средствам .Net Core
    #39836235
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Microsoft Access Driver (*.mdb,*.accdb)

это вряд ли будет кроссплатформенно
...
Рейтинг: 0 / 0
Доступ в файл базы Access по средствам .Net Core
    #39836237
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вы вообще хоть как-то можете получить доступ к своей базе, может начнёте с примеров доступа:

https://vscode.ru/prog-lessons/ms-access-i-c-sharp-rabotaem-s-bd.html
...
Рейтинг: 0 / 0
Доступ в файл базы Access по средствам .Net Core
    #39836239
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а тут чисто мышкокликаньем:
https://it-black.ru/rabota-s-bazoj-dannyh-v-ci_sharp/
...
Рейтинг: 0 / 0
Доступ в файл базы Access по средствам .Net Core
    #39836244
AlexKM2020
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Konst_One, спасибо за отклик.
OleDbConnection нельзя, .Net Core его не поддерживает...
...
Рейтинг: 0 / 0
Доступ в файл базы Access по средствам .Net Core
    #39836248
AlexKM2020
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Надо через ODBC ...
.Net Core его знает.
Таковы наши реали ...
...
Рейтинг: 0 / 0
Доступ в файл базы Access по средствам .Net Core
    #39836254
Фотография Konst_One
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
пробуйте через юзер DSN , сначала его настройте и протестите соединение: https://stackoverflow.com/a/10375210
...
Рейтинг: 0 / 0
Доступ в файл базы Access по средствам .Net Core
    #39836259
Дмитрий Мух
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlexKM2020DBQ=C:\\Data\\input.mdb
а в статье слэши в другую сторону: Dbq=C:/location/to/mdb/file
...
Рейтинг: 0 / 0
Доступ в файл базы Access по средствам .Net Core
    #39836263
AlexKM2020
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Так, а файл сам куда положить?
...
Рейтинг: 0 / 0
Доступ в файл базы Access по средствам .Net Core
    #39836329
AlexKM2020
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Коллеги, получилось!
Отдельное спасибо, Konst_One за вариант с DSN.

Что сделано:
в ODBC в системный DSN в 32 и 62 разрядные добавил одноименные DSN со ссылкой на тот файл.
Далее код, который работает:
using System;
using System.Data.Odbc;

namespace ImportPIMS
{
class Program
{
static void Main(string[] args)
{
string connetionString = null;
connetionString = @"DSN=PIMS";
using (OdbcConnection myConnection = new OdbcConnection())
{
try
{
myConnection.ConnectionString = connetionString;
myConnection.Open();
Console.WriteLine("Connection Open ! ");
Console.ReadKey();
myConnection.Close();
}
catch (Exception ex)
{
Console.WriteLine("Can not open connection ! ");
Console.WriteLine(ex);
Console.ReadKey();
}
}
}
}
}

Коллеги, кто откликнулся, всем спасибо!
...
Рейтинг: 0 / 0
Доступ в файл базы Access по средствам .Net Core
    #39836423
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlexKM2020Коллеги, получилось!
Отдельное спасибо, Konst_One за вариант с DSN.

Что сделано:
в ODBC в системный DSN в 32 и 62 разрядные добавил одноименные DSN со ссылкой на тот файл.
Далее код, который работает:
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
using System;
using System.Data.Odbc;

namespace ImportPIMS
{
    class Program
    {
        static void Main(string[] args)
        {
            string connetionString = null;
            connetionString = @"DSN=PIMS";
            using (OdbcConnection myConnection = new OdbcConnection())
            {
                try
                {
                    myConnection.ConnectionString = connetionString;
                    myConnection.Open();
                    Console.WriteLine("Connection Open ! ");
                    Console.ReadKey();
                    myConnection.Close();
                }
                catch (Exception ex)
                {
                    Console.WriteLine("Can not open connection ! ");
                    Console.WriteLine(ex);
                    Console.ReadKey();
                }
            }
        }
    } 
}


Коллеги, кто откликнулся, всем спасибо!
пожалуйста, научитесь уже оформлять код.
...
Рейтинг: 0 / 0
Доступ в файл базы Access по средствам .Net Core
    #39836476
Фотография ЕвгенийВ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AlexKM2020

Коллеги, кто откликнулся, всем спасибо!
Это удалось запустить под Linux?
...
Рейтинг: 0 / 0
Доступ в файл базы Access по средствам .Net Core
    #39836586
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
О да, ODBC не раз выручало с самыми мутными, дикими и даже битыми источниками данных)
...
Рейтинг: 0 / 0
Доступ в файл базы Access по средствам .Net Core
    #39836717
Ролг Хупин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Relic HunterА что за приложение-то? WinForms ))? Так его на Коре тоже не завезли))

вообще-то WinForms на коре 3 завезли, но только под виндоуз
...
Рейтинг: 0 / 0
Доступ в файл базы Access по средствам .Net Core
    #39836731
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ролг ХупинRelic HunterА что за приложение-то? WinForms ))? Так его на Коре тоже не завезли))

вообще-то WinForms на коре 3 завезли, но только под виндоуз
очень надеялся, что WPF завезут под линух, тем более, что там ограничений меньше, чем winforms
...
Рейтинг: 0 / 0
Доступ в файл базы Access по средствам .Net Core
    #39836740
Ролг Хупин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Roman MejtesРолг Хупинпропущено...


вообще-то WinForms на коре 3 завезли, но только под виндоуз
очень надеялся, что WPF завезут под линух, тем более, что там ограничений меньше, чем winforms

вроде бы завезли winforms и WPF, но для виндоуз. А про другие ОС пока (или совсем) молчат.

Я попробовал: сделал винформс коре приложение, под виндоуз пустилось, построилось под линукс, пустил там - фигушки, нету винформс.
...
Рейтинг: 0 / 0
25 сообщений из 26, страница 1 из 2
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Доступ в файл базы Access по средствам .Net Core
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]