ฉันพยายามที่จะเชื่อมต่อกับฐานข้อมูล MS SQL ใช้FreeTDSและunixODBC ฉันได้อ่านคำแนะนำต่าง ๆ เกี่ยวกับวิธีการใช้ แต่ไม่มีใครทำงานได้ดีสำหรับฉัน เมื่อฉันพยายามเชื่อมต่อกับฐานข้อมูลโดยใช้isqlเครื่องมือฉันได้รับข้อผิดพลาดต่อไปนี้:
$ isql -v TS username password
[IM002][unixODBC][Driver Manager]Data source name not found, and no default driver specified
[ISQL]ERROR: Could not SQLConnect
ให้ใครสร้างการเชื่อมต่อกับฐานข้อมูล MS SQL สำเร็จแล้วโดยใช้freetdsและ unixodbcบน Ubuntu 12.04? ฉันขอขอบคุณความช่วยเหลือ
ด้านล่างเป็นขั้นตอนที่ฉันใช้เพื่อกำหนดค่าfreetdsและ unixODBC ขอบคุณสำหรับความช่วยเหลือของคุณล่วงหน้า!
ขั้นตอน
ก่อนอื่นฉันได้ติดตั้งแพ็คเกจต่อไปนี้ด้วย:
sudo apt-get install unixodbc unixodbc-dev freetds-dev tdsodbc
และกำหนดค่าfreetdsดังนี้:
--- /etc/freetds/freetds.conf ---
[TS]
host = SERVER
port = 1433
tds version = 7.0
client charset = UTF-8
การใช้เครื่องมือtsqlฉันสามารถเชื่อมต่อกับฐานข้อมูลได้สำเร็จโดยดำเนินการ
tsql -S TS -U username -P password
เนื่องจากฉันต้องการการเชื่อมต่อodbcฉันได้กำหนดค่าodbcinst.iniดังนี้:
--- /etc/odbcinst.ini ---
[FreeTDS]
Description = FreeTDS
Driver = /usr/lib/x86_64-linux-gnu/odbc/libtdsodbc.so
Setup = /usr/lib/x86_64-linux-gnu/odbc/libtdsS.so
FileUsage = 1
CPTimeout =
CPResuse =
client charset = utf-8
และodbc.iniดังต่อไปนี้:
--- /etc/odbc.ini ---
[TS]
Description = "test"
Driver = FreeTDS
Servername = SERVER
Server = SERVER
Port = 1433
Database = DBNAME
Trace = No
พยายามเชื่อมต่อกับฐานข้อมูลโดยใช้เครื่องมือisqlด้วยเช่นการกำหนดค่าผลลัพธ์ข้อผิดพลาดต่อไปนี้:
$ isql -v TS username password
[IM002][unixODBC][Driver Manager]Data source name not found, and no default driver specified
[ISQL]ERROR: Could not SQLConnect
tsql
:sudo apt-get install freetds-bin