powered by simpleCommunicator - 2.0.52     © 2025 Programmizd 02
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / C# и FireBird или PostgreSql
21 сообщений из 21, страница 1 из 1
C# и FireBird или PostgreSql
    #39399749
antox
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Подскажите, что лучше и проще использовать для связки C# + бесплатная База данных, FireBird или PostgreSql или "..." ?

При этом необходима простота переноса на любой комп (WinXP-Win10)

P.S. Ранее использовалось Delphi + FireBird Embedded
...
Рейтинг: 0 / 0
C# и FireBird или PostgreSql
    #39399784
Barkan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
antox,

Ну раз работал с Firebird embedded то и продолжай с ним.
Для Firebird используй Firebird NET DataProvider, для PostgreSQL тоже есть свой NET DataProvider (Npgsql).
...
Рейтинг: 0 / 0
C# и FireBird или PostgreSql
    #39399881
antox
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Barkan, спасибо!

А что нужно переносить на другой комп вместе с fb и приложением? Dll провадера? Достаточно поместить их в папку с приложением или необходимо регистрировать в системе? А если fb не enbedded и утсновлен на другой linux машине, не надо что-то дополнительное использовать кроме этих dll ?

Можно ли при использовании Firebird NET DataProvider выводить данные в какой-нибудь grid ?

Какой лучше использовать grid, в delphi использую Ehlib, но для VS его нет?
...
Рейтинг: 0 / 0
C# и FireBird или PostgreSql
    #39403269
Barkan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
antox,

Достаточно скопировать все DLL оказавшиеся рядом с твоим EXE файлом.
С embedded я не работал, всегда использовал "полный" сервер установленный локально или где то в сети.
В моём случае - пофигу где, главное правильно указать имя сервера и имя базы (алиаса базы).

Когда данные получены в DataTable или в какую либо коллекцию, им уже фиолетово откуда они родом.
Показывай их в гридах, у Winforms их два, у WPF тоже есть свой. Лично я пользуюсь "допиленным" DataGridView.
...
Рейтинг: 0 / 0
C# и FireBird или PostgreSql
    #39404755
Ролг Хупин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
antoxПодскажите, что лучше и проще использовать для связки C# + бесплатная База данных, FireBird или PostgreSql или "..." ?

При этом необходима простота переноса на любой комп (WinXP-Win10)

P.S. Ранее использовалось Delphi + FireBird Embedded

PostgreSql
SQLServer Express 2016 (database size<=10GB)
...
Рейтинг: 0 / 0
C# и FireBird или PostgreSql
    #39404913
Фотография hVostt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
antoxPostgreSql
...
Рейтинг: 0 / 0
C# и FireBird или PostgreSql
    #39405416
doos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Firebird
...
Рейтинг: 0 / 0
C# и FireBird или PostgreSql
    #39405518
Vladimir Baskakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в тестовом режиме у меня вроде все приделалось
в связке FB embedded - c#.

тогда перенос на другой комп - ну папочку целиком.
но, говорят это неправильно, а правильнее все таки сервер - в отдельном процессе.
...
Рейтинг: 0 / 0
C# и FireBird или PostgreSql
    #39405523
Pallaris
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
FB embedded же в эксклюзивном режиме базу открывает, только один юзер может лазить, не?
...
Рейтинг: 0 / 0
C# и FireBird или PostgreSql
    #39405670
doos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Pallaris,

да, а режим подключения (эмбедед/не эмбедед) зависит от строки подключения
...
Рейтинг: 0 / 0
C# и FireBird или PostgreSql
    #39463746
Barkan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vladimir Baskakovв тестовом режиме у меня вроде все приделалось
в связке FB embedded - c#.

Поделись тогда опытом, а то с "полнокровным" FB работаю давно, а с embedded только сейчас решил попробовать и ступор.
Какие версии используешь NET Framework, FB NET Data Provider, Firebird?
Что пишешь в строку подключения?
Используешь FbConnectionStringBuilder?
Что подсовываешь в папку скомпилированной программы?
Как распространяешь программу?
...
Рейтинг: 0 / 0
C# и FireBird или PostgreSql
    #39465964
Vladimir Baskakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну я только экспериментировал
- взял папку от прямо файерберда, в нее же закинул дотнетный драйвер FirebirdSql.Data.FirebirdClient.dll

тк база у меня 32 разрядная (или драйвер? не помню, что-то из них), сказал об этом компилятору
csc /platform:x86 /reference:FirebirdSql.Data.FirebirdClient.dll %1

билдер , да использовал
FbConnectionStringBuilder fb_con = new FbConnectionStringBuilder();
//fb_con.Charset = "UTF8"; //используемая кодировка
fb_con.UserID = "login"; //логин
fb_con.Password = "password"; //пароль
fb_con.Database = @"empty__.fdb"; //путь к файлу базы данных
fb_con.ServerType = FirebirdSql.Data.FirebirdClient.FbServerType.Embedded ; //указываем тип сервера (0 - "полноценный Firebird" (classic или super server), 1 - встроенный (embedded))

дотнет кажись 4-й.

но дальше экспериментов не продвинулся.
...
Рейтинг: 0 / 0
C# и FireBird или PostgreSql
    #39466336
Barkan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vladimir Baskakov,

У меня что то не получается, сперва грешил на старые версии NET (v2.0) и FB NET Data Provider (v.2.0.1) при новом Firebird v.3
Установил NET 4.5, взял FB NET Data Provider v.5.9.1 и всё равно лыжи не едут!
Делаю так - в папку с откомпилированной программой положил файл базы данных и файл fbclient.dll из папки Firebird3.
В коде пишу:

Код: vbnet
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.
32.
Imports FirebirdSql.Data.FirebirdClient

Public Partial Class MainForm
   
   Private Shared cnnCNN As FbConnection
   
   Public Sub New()
      ' The Me.InitializeComponent call is required for Windows Forms designer support.
      Me.InitializeComponent()
      AddHandler Me.Closing, AddressOf Me_Closing
      Open()
   End Sub
   
   Private Sub Open()
      Dim strBase As String = Application.StartupPath & "\LOT.FDB"
      Dim strCNN As String = "initial catalog=" & strBase & ";dialect=3;user id=GAMER;password=xxx;role name=GAMERS;character set=WIN1251;server type=Embedded;client library=fbclient.dll"
      
      cnnCNN = New FbConnection(strCNN)
      Try
         cnnCNN.Open()
         Debug.Print("Open")
      Catch ex As FbException
         Debug.Print(ex.ToString())
      End Try
   End Sub
   
   Private Sub Me_Closing(ByVal obj As Object,ByVal e as System.ComponentModel.CancelEventArgs)
      cnnCNN.Close()
      Debug.Print("Close")
   End Sub
   
End Class



При выполнении получаю исключение:
FirebirdSql.Data.FirebirdClient.FbException (0x80004005): connection lost to database ---> connection lost to database
с указанием на строку cnnCNN.Open()

При использовании "полного" сервера (строка коннекта другая) код работает.

Подскажите люди добрые, чего я не так делаю.
...
Рейтинг: 0 / 0
C# и FireBird или PostgreSql
    #39466375
Pallaris
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BarkanДелаю так - в папку с откомпилированной программой положил файл базы данных и файл fbclient.dll из папки Firebird3.
...
Рейтинг: 0 / 0
C# и FireBird или PostgreSql
    #39466376
Pallaris
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
C# и FireBird или PostgreSql
    #39466440
Barkan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Pallaris,

Перечитал пост, стал добавлять из Firebird3 в папку с программой:
- [intl]
- [plugins]
- fbclient.dll
- firebird.msg
- databases.conf
- firebird.conf (здесь пробовал менять параметры по ходу чтения поста)
- icudtl52l.dat
- msvcr100.dll

Ситуация не изменилась, по прежнему то же исключение:
FirebirdSql.Data.FirebirdClient.FbException (0x80004005): connection lost to database ---> connection lost to database
...
Рейтинг: 0 / 0
C# и FireBird или PostgreSql
    #39467845
Vladimir Baskakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а киньте свою программу в папку с распакованной базой . раз. Используйте построители строк соединения - два. три.... а оно вообще зачем? оно точно надо? вопрос конечно философский, но все же.
...
Рейтинг: 0 / 0
C# и FireBird или PostgreSql
    #39468260
Barkan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vladimir Baskakovа киньте свою программу в папку с распакованной базой . раз.
Вот совсем не понял что предлагаете! Разверните пожалуйста своё предложение.
FbConnectionStringBuilder - использовал, не результат не влияет.
Зачем вообще это делаю - хочу из рабочей программы сделать "демонстрашку" - скопировал, запустил, показал.
В форуме по FireBird то же обсуждается: http://www.sql.ru/forum/1082401-3/est-li-firebird-3-embedded-server
...
Рейтинг: 0 / 0
C# и FireBird или PostgreSql
    #39468270
Pallaris
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BarkanВ форуме по FireBird то же обсуждается: http://www.sql.ru/forum/1082401-3/est-li-firebird-3-embedded-server

Надеюсь, там вам помогут больше. Работал с FB Embedded 2.5 давно, не припомню таких проблем. Наверное, что-то изменилось с тех времен
...
Рейтинг: 0 / 0
C# и FireBird или PostgreSql
    #39468331
Vladimir Baskakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BarkanVladimir Baskakovа киньте свою программу в папку с распакованной базой . раз.
Вот совсем не понял что предлагаете! Разверните пожалуйста своё предложение.
FbConnectionStringBuilder - использовал, не результат не влияет.
Зачем вообще это делаю - хочу из рабочей программы сделать "демонстрашку" - скопировал, запустил, показал.
В форуме по FireBird то же обсуждается: http://www.sql.ru/forum/1082401-3/est-li-firebird-3-embedded-server

Я (давно) качал не инсталляху ф-берда, а архив.

Firebird-3.0.###_Win32.zip

Прямо его развернул, туда же закинул драйвер

FirebirdSql.Data.FirebirdClient.dll

и прямо в ней же из консоли собирал экзешник.
примерно так

csc /platform:x86 /reference:FirebirdSql.Data.FirebirdClient.dll hello.cs


Код: 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.
32.
33.
34.
35.
36.
37.
38.
39.
using System; 
using System.Collections.Generic; 
using System.Collections; 
using System.ComponentModel; 
using System.Data; 
using System.Drawing; 
using System.Linq; 
using System.Text; 
using System.Windows.Forms; 
using FirebirdSql.Data.FirebirdClient; //добавляем пространство имен firebird ado.net provider, необходимое для взаимодействия с Firebird
using FirebirdSql.Data.Isql;


// Hello1.cs
public class Hello1
{
   public static void Main()
   {

    FbConnectionStringBuilder fb_con = new FbConnectionStringBuilder();
    //fb_con.Charset = "UTF8"; //используемая кодировка
    fb_con.UserID = "SYSDBA"; //логин
    fb_con.Password = "masterkey"; //пароль
    fb_con.Database = @"empty__.fdb"; //путь к файлу базы данных
    fb_con.ServerType = FirebirdSql.Data.FirebirdClient.FbServerType.Embedded ; //указываем тип сервера (0 - "полноценный Firebird" (classic или super server), 1 - встроенный (embedded))

    //System.Collections.Hashtable parameters = new Hashtable();
    //parameters.Add("User", "SYSDBA");
    //parameters.Add("Password", "masterkey");
    //parameters.Add("Database", @"mydb.fdb");
    //parameters.Add("ServerType", 1);

    FbConnection.CreateDatabase(fb_con.ConnectionString); //открываем БД

    System.Console.WriteLine(fb_con.ConnectionString + "\nDatabase Created!");

    //fb.Close(); 
   }
}




он у меня создавал тестовую пустую базу. давайте попробуем, если все так же в точности сделать, причем в папке где в пути от корня не будет кириллицы и пробелов - оно создаст базу или не создаст базу пустую.
...
Рейтинг: 0 / 0
C# и FireBird или PostgreSql
    #39469123
Barkan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vladimir Baskakov,

Спасибо!

Видимо причина была в том, что я подсовывал своей программе файлы от установленного x64 сервера.
Скачал Firebird-3.0.2.32703-0_Win32.zip, распаковал в свою папку - заработало.
В общем сейчас работает при наличии следующих папок и файлов:
- [intl]
- [plugins]
- fbclient.dll
- ib_util.dll

Проверил на проектах для NET 4.5 + FB Data Provider 5.9.1 и NET 3.5 + FB Data Provider 3.2.0
...
Рейтинг: 0 / 0
21 сообщений из 21, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / C# и FireBird или PostgreSql
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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