2010-03-30 4 views
11

C++의 Linux에서 SQL Server 데이터베이스에 일부 데이터를 작성해야합니다. C++ Linux에서 SQL Server에 액세스

내가 먼저 ODBC 드라이버에 설치되어야하며 일해야,이 sqlapi.com

하지만 생각을 발견했다.

나는이 adminlife.net/allgemein/mssql-zugriff-unter-debian-etch-mit-unixodbc-und-freetds/ 또는이 http://b.gil.megiteam.pl/2009/11/linux-odbc-to-mssql/

을 folowed 그러나 그것은 작동하지 않았다. 포트 1433 폐쇄 될 것으로 보인다 ($ sudo는 nmap을 -PN -sU -p 1433 192.168.56.101 -> 포트 "필터링")

isql을 -v SQLEXPRESS 사 -> 만 응답이 기다리거나 "나오지 않았어 얻을 ' t에 연결 "

Windows가있는 다른 컴퓨터에서 SQL 서버에 데이터를 쓰는 데 아무런 문제가 없습니다. 서버가 원격 액세스로 올바르게 구성되어야합니다.

아이디어가 있으십니까?

답변

7

가 여기에 내가 그 주제에 관한 북마크 링크, 그것은 당신을 도울 수 있기를 바랍니다 :

  • Connection strings
  • How to configure ODBC
  • FreeTDS
  • 그것은 몇 시간 전에했지만, 기본적으로 내가 기억하는 것입니다 :

    당신은 /etc/odbcinst.ini라는 이름의 파일에 당신이 가지고있는 특정 MSSQL 드라이버에 대한 항목을 만들어야합니다. 그런 다음 각 MSSQL 서버, 당신은 $ HOME/.odbc.ini를의 어느 globaly /etc/odbc.ini에서 항목 (또는 DSN), 또는 사용자 지역을 만들어야합니다.

    내가 사용하는 일부 이름이 다를 수 있습니다 (그리고 지금 리눅스 상자에 대한 확인 권한이 없습니다).하지만 일반적인 생각이 들었습니다.

    이렇게하면 isql -d이 데이터베이스에 성공적으로 연결되어야합니다. 그렇다면 ODBC 용 C/Linux API를 사용하는 것이 떡일 것입니다. 주어진 링크에서 제공되는 자습서.

    +0

    아, 그리고 나는 일부 조정은 MSSQL 서버 자체에서 수행해야한다는 것을 기억하십시오. TCP 연결을 허용하고 로그인/암호를 사용하여 액세스해야합니다. – ereOn

    4

    FreeTDS는 원하는 것입니다. "FreeTDS는 Unix 및 Linux 용 라이브러리 세트로, 프로그램이 Microsoft SQL Server 및 Sybase 데이터베이스와 기본적으로 대화 할 수있게 해줍니다."

    http://www.freetds.org

    +0

    나에게 새로운 것은 없다.이 모든 것을 만들었고, 내가 게시 한 링크에 같은 절차가있다. – Meloun

    +0

    SQL 서버 상자에서 열린 포트 1433을 찾을 수 없다면 사용중인 라이브러리와 관련없는 문제가 있습니다. – Joe

    +0

    http://www.freetds.org는 죽은 링크입니다. – rstackhouse

    관련 문제