Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server MAC OSX-如何解决“问题”;无法SQLConnect";错误_Sql Server_Database_Macos_Freetds_Unixodbc - Fatal编程技术网

Sql server MAC OSX-如何解决“问题”;无法SQLConnect";错误

Sql server MAC OSX-如何解决“问题”;无法SQLConnect";错误,sql-server,database,macos,freetds,unixodbc,Sql Server,Database,Macos,Freetds,Unixodbc,我正在尝试连接到我的sql server数据库,但它不工作 freetds正在工作,请参见命令: tsql -S myserver.database.windows.net -U myuser -P mypassword 输出: locale is "C/UTF-8/C/C/C/C" locale charset is "UTF-8" using default charset "UTF8" 1> [IM002][unixODBC][Driver Manager]Data sourc

我正在尝试连接到我的sql server数据库,但它不工作

freetds正在工作,请参见命令:

tsql -S myserver.database.windows.net -U myuser -P mypassword
输出:

locale is "C/UTF-8/C/C/C/C"
locale charset is "UTF-8"
using default charset "UTF8"
1> 
[IM002][unixODBC][Driver Manager]Data source name not found, and no default driver specified
[ISQL]ERROR: Could not SQLConnect
但是当我尝试运行命令isql时,它会返回错误

命令:

isql -v MYSERVER myuser mypassword
输出:

locale is "C/UTF-8/C/C/C/C"
locale charset is "UTF-8"
using default charset "UTF8"
1> 
[IM002][unixODBC][Driver Manager]Data source name not found, and no default driver specified
[ISQL]ERROR: Could not SQLConnect
我的文件:

freetds.conf:

#   $Id: freetds.conf,v 1.12 2007-12-25 06:02:36 jklowden Exp $
#
# This file is installed by FreeTDS if no file by the same 
# name is found in the installation directory.  
#
# For information about the layout of this file and its settings, 
# see the freetds.conf manpage "man freetds.conf".  

# Global settings are overridden by those in a database
# server specific section
[global]
    # TDS protocol version
    tds version = 8.0

    # Whether to write a TDSDUMP file for diagnostic purposes
    # (setting this to /tmp is insecure on a multi-user system)
;   dump file = /tmp/freetds.log
;   debug flags = 0xffff

    # Command and connection timeouts
;   timeout = 10
;   connect timeout = 10

    # If you get out-of-memory errors, it may mean that your client
    # is trying to allocate a huge buffer for a TEXT field.  
    # Try setting 'text size' to a more reasonable limit 
    text size = 64512

    # If you experience TLS handshake errors and are using openssl,
    # try adjusting the cipher list (don't surround in double or single quotes)
    # openssl ciphers = HIGH:!SSLv2:!aNULL:-DH

[MYSERVER]
   host = myserver.database.windows.net
   port = 1433
   tds version = 8.0
   client charset = UTF8
odbcinst.ini:

[FreeTDS]
Description = FreeTDS
Driver      = /usr/local/lib/libtdsodbc.so
Setup       = /usr/local/lib/libtdsodbc.so
UsageCount  = 1
Trace       = Yes
TraceFile   = /Users/giorgecaique/Documents/sql.log
odbc.ini:

[MYSERVER]
Description = MYSERVER
Driver      = FreeTDS
Database    = mydatabase
Server      = myserver.database.windows.net
UserName    = myuser
Password    = mypassword
TDS_Version = 8.0

有人能帮我吗?我已经看过很多关于如何解决这个问题的教程,但是没有一个对我有用。

odbc.ini
文件中,您需要一个
Servername
属性,该属性指向
freetds.conf
中的DSN名称。另外,
8.0
不是有效版本(说来话长,请参阅文档),它是
UTF-8
而不是
UTF8
。例如:

freetds.conf

[MYSERVER]
   host = myserver.database.windows.net
   port = 1433
   tds version = 7.1
   client charset = UTF-8
然后在
odbc.ini
中:

[MYSERVER]
Description = MYSERVER
Driver      = FreeTDS
Database    = mydatabase
Servername  = MYSERVER
UserName    = myuser
Password    = mypassword
TDS_Version = 7.1

祝你好运

odbc.ini
文件中,需要一个
Servername
属性,该属性指向
freetds.conf
中的DSN名称。另外,
8.0
不是有效版本(说来话长,请参阅文档),它是
UTF-8
而不是
UTF8
。例如:

freetds.conf

[MYSERVER]
   host = myserver.database.windows.net
   port = 1433
   tds version = 7.1
   client charset = UTF-8
然后在
odbc.ini
中:

[MYSERVER]
Description = MYSERVER
Driver      = FreeTDS
Database    = mydatabase
Servername  = MYSERVER
UserName    = myuser
Password    = mypassword
TDS_Version = 7.1

祝你好运

您是否检查了库
/usr/local/lib/libtdsodbc.so

我也遇到了类似的错误。我在上按照此指南修复了错误

我相信您可能尚未安装
freetds
的驱动程序,您可以通过
Homebrew
安装这些驱动程序:

$brew安装freetds——使用unixodbc

您是否检查了库
/usr/local/lib/libtdsodbc.so

我也遇到了类似的错误。我在上按照此指南修复了错误

我相信您可能尚未安装
freetds
的驱动程序,您可以通过
Homebrew
安装这些驱动程序:

$brew安装freetds——使用unixodbc

您是否在此处尝试了emehex的答案:


您是否在此处尝试了emehex的答案:


谢谢你的回复,但它仍然不起作用。“无法SQLConnect”错误仍然存在。感谢您的回复,但它仍然不起作用。“无法SQLConnect”错误持续存在。