2010-03-30 19 views
11

Potrzebuję zapisać niektóre dane do bazy danych SQL Server z Linuxa w C++.C++ Dostęp do SQL Server z Linuksa

Znalazłem sqlapi.com

Ale myślę, że na pierwszy sterownik ODBC ma zostać zainstalowana i ma pracować.

I folowed ten adminlife.net/allgemein/mssql-zugriff-unter-debian-etch-mit-unixodbc-und-freetds/ czy to http://b.gil.megiteam.pl/2009/11/linux-odbc-to-mssql/

Ale to nie działa. Port 1433 wydaje się być zamknięta ($ sudo nmap -PN -sU -p 1433 192.168.56.101 -> port "filtrowane")

isql -v SQLEXPRESS sa -> czekać bez odpowiedzi lub uzyskać „mogłem” t połączyć się z sql "

Z innego komputera z systemem Windows nie mam problemu z zapisaniem danych w SQL Server, , więc serwer powinien być odpowiednio skonfigurowany do zdalnego dostępu.

Wszelkie pomysły?

Odpowiedz

7

Oto linki I zapamiętane dotyczące tego tematu, mam nadzieję, że może pomóc:

To było jakiś czas temu, ale w zasadzie co pamiętam to:

Musisz utworzyć wpis dla danego kierowcy MSSQL masz w pliku o nazwie /etc/odbcinst.ini. Następnie dla każdego serwera MSSQL należy utworzyć wpis (lub DSN), globalnie w /etc/odbc.ini lub lokalnie użytkownika, w $ HOME/.odbc.ini.

Niektóre nazwy, których używałem mogą się różnić (i nie mam dostępu do mojego komputera z Linuksem teraz, aby sprawdzić), ale masz ogólny pomysł.

Po wykonaniu tej czynności, isql -d powinno połączyć się pomyślnie z bazą danych. Jeśli tak, to korzystanie z API C/Linux dla ODBC powinno być łatwe. Poradniki zawarte w podanych linkach.

+0

No i pamiętam, że niektóre szczypanie musi być zrobione na MSSQL Server samego. Musisz zezwolić na połączenia TCP i dostęp za pomocą loginu/hasła. – ereOn

4

FreeTDS jest tym, czego potrzebujesz. "FreeTDS to zestaw bibliotek dla systemów Unix i Linux, który pozwala twoim programom rozmawiać natywnie z Microsoft SQL Server i bazami danych Sybase."

http://www.freetds.org

+0

nic nowego dla mnie, nie pomogłem, zrobiłem to wszystko, jest taka sama procedura w linkach, które opublikowałem .. – Meloun

+0

Jeśli nie możesz znaleźć portu 1433 otwartego na serwerze SQL, to masz problem niezwiązany z używanymi bibliotekami. – Joe

+0

http://www.freetds.org to martwy link. – rstackhouse

Powiązane problemy