问题标签 [freetds]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
2380 浏览

php - 在 Linux 上从 PHP 连接到 MS SQL Server

我需要从在 Red Hat Enterprise Linux 4 上运行的 PHP 连接到 Windows 上的 MS SQL Server。我已经安装了 FreeTDS,我可以使用 tsql 命令连接到数据库。

我当前的 PHP 没有 mssql 函数/扩展。

我的问题是,如何在不重建 PHP 的情况下设置 mssql 扩展?是否有为此预先构建的软件包?我试过用谷歌搜索,但我没有运气。

0 投票
5 回答
22871 浏览

python - 使用带有“Windows 凭据”的 Linux 上的 python 连接到 MS SQL Server

有没有办法使用 Windows 域凭据在 Linux 上使用 python 连接到 MS SQL Server 数据库?

我可以使用 Windows Credentials 从我的 Windows 机器上完美连接,但尝试从带有 pyodbs + freetds + unixodbc 的 linux python 上做同样的事情

导致此错误:

我确定密码写对了,但我尝试了许多不同的用户名组合:

甚至

无济于事。有任何想法吗?

0 投票
3 回答
7459 浏览

python - 在 ubuntu 上使用 pyodbc 在 SQL Server 上插入图像字段

我正在使用Ubuntu 9.04

我已经安装了以下软件包版本:

我是这样配置/etc/unixodbc.ini的:

我是这样配置/etc/freetds/freetds.conf的:

31e2fae4adbf1b2af1726e5668a3414cf46b454f我已从中获取pyodbc 修订版并使用“ ”http://github.com/mkleehammer/pyodbc安装它python setup.py install

我的本地网络上有一台装有Microsoft SQL Server 2000的 Windows 机器,启动并监听本地 IP 地址 10.32.42.69。我有一个名为“Common”的空数据库。我有用户“sa”,密码为“secret”,拥有完全权限。

我正在使用以下 python 代码来设置连接:

到目前为止一切正常。我在服务器上使用了 SQLServer 的企业管理器,新表就在那里。现在我想在表上插入一些数据。

现在在我原来的问题上,我在使用时遇到cur.execute(sql, (data,))了问题,但现在我已经编辑了这个问题,因为按照下面 Vinay Sajip 的回答(谢谢),我将其更改为:

并且插入工作正常。我可以使用以下测试代码确认插入数据的大小:

完美通过!

现在问题在于检索数据。

我正在尝试常见的方法:

然而那失败了!!

我把上面的所有代码都放在了一个文件中以便于测试任何想要帮助的人。

现在的问题:

我希望 python 代码将图像文件插入 mssql。我想查询图像并将其显示给用户。

我不关心 mssql 中的列类型。我IMAGE在示例中使用“”列类型,但任何二进制/blob 类型都可以,只要我得到未损坏的插入文件的二进制数据。Vinay Sajip 在下面说,这是 SQL SERVER 2000 中的首选数据类型。

现在正在插入数据而没有错误,但是当我检索数据时,只返回 4k。(数据在 4096 被截断)。

我怎样才能使它工作?


编辑:Vinay Sajip 下面的回答给了我在现场使用 pyodbc.Binary 的提示。我已经相应地更新了这个问题。谢谢维奈萨吉普!

Alex Martelli 的评论让我想到了使用DATALENGTHMS SQL 函数来测试数据是否已完全加载到列上。谢谢亚历克斯马泰利!

0 投票
2 回答
944 浏览

django - 如何在 Windows 上运行 Django 并应对没有守护程序模式的 Apache?

这个问题的演变

这开始是为了寻找在 Linux 上运行 Django、通过 Django-PyODBC 访问 SQL Server 以及像在 Windows 上运行 Django 一样有效地支持 Unicode 的其他建议。

在未能为 Linux 中的 ODBC 驱动程序提供与 Windows ODBC 驱动程序相同级别的 Unicode 支持的良好解决方案之后;这个问题变成了应对在 Windows 中没有 Apache 守护程序模式的负面影响。

问题

如果在 Windows 上运行 Apache+mod_wsgi,每次部署新的 Django 代码时都需要重新启动 Apache 服务器。有关原因的详细信息,请参阅格雷厄姆的回答

当您可能需要重新启动 Apache,拒绝服务直到它完全重新启动时,如何运行一组可靠的应用程序和服务?

问题

我们使用 SQL Server 2005,我们需要支持Microsoft Office 应用程序中生成的unicode 字符和某些字符(如smart-quotes )。

在 SQL Server 2005 上运行 Django 需要我们使用 Django-PyODBC。它在 Windows/Linux/Mac OS X 上运行良好;但是,如果您需要 unicode 支持,那么您在 Linux / Mac OS X 上就不走运了 - Unix 中 SQL Server 的 ODBC 驱动程序处于 unicode 合规性的不同阶段。如果您指定客户端字符编码为 UTF-8 (*),则开源驱动程序FreeTDS适用于某些字符;但不支持所有字符。

在我们的测试中,在 Windows 2003 上运行 Django 并使用 Microsoft ODBC 驱动程序允许我们正确插入/更新/选择几种不同语言的任何字符,以及 Office 应用程序中的 Microsoft 智能字符。

但是在 Windows 上运行意味着每次我们部署新代码时都需要重新启动 Apache——这意味着几秒钟内没有服务。


(*) 坦率地说,我们设法让 FreeTDS 接受某些字符的唯一方法是在client charsetfreetds.conf 中添加一个条目:

0 投票
3 回答
2214 浏览

sql-server - 来自服务器的 FreeTDS 错误令牌 (SQL Server)

今天,我们的 Ruby on Rails 应用程序和远程旧版SQL Server 2005数据库之间的活动比平时多得多,并且我们开始间歇性地收到以下错误。是什么?我怎样才能防止它(除了避免我们正在处理的情况)?

错误信息:

ActiveRecord::StatementInvalid: DBI::DatabaseError: 08S01 (20020) [unixODBC][FreeTDS][SQL Server] 来自服务器的错误令牌:数据流处理不同步:SELECT * FROM [marketing] WHERE ([marketing].[contact_id ] = 832085)

0 投票
2 回答
411 浏览

php - odbc(或mysql)资源如何在php中工作?

当您像这样运行查询时:

$result 中存储的资源是否指向运行 php 的服务器上存在的数据?还是指向数据库中的数据?换句话说,正如 while 循环所做的那样,PHP 是每次迭代都与 DB 对话,还是从应用程序端的某个源中提取 $row?

这对我来说很重要的是我有一个使用 ODBC 和 PHP 通过 VPN 与之交谈的数据库。上周末发生了一些奇怪的事情,在 while 循环期间发生了巨大的停顿。因此在迭代之间,脚本将停止执行几秒钟到几分钟。发生这种情况似乎是完全随机的。我想知道是否需要在每次迭代时通过 VPN 与服务器通信,并且连接可能不稳定,或者我的 ODBC 驱动程序 (FreeTDS) 是否出现问题。

0 投票
3 回答
1870 浏览

sql-server - Django <-> SQL Server 2005,文本编码问题

我正在尝试使用以下方法将 Django 数据存储在 MS SQL Server 2005 上:

http://code.google.com/p/django-pyodbc/ (pyodbc + FreeTDS)

只要我存储由 ASCII 字符组成的字符串,一切都可以。当我使用 unicode(例如 '\xc5\x82')时,django 会在以下位置抛出 ProgrammingError:

trace 的最后一个元素是:

BTW http://code.google.com/p/django-mssql/似乎在 Linux 下不起作用,django-mssql 需要 pythoncom 库。我对吗?

0 投票
4 回答
5703 浏览

php - MS SQL Server 上的 ODBC 查询仅在 PHP PDO (FreeTDS) 中返回前 255 个字符

我目前正在尝试从我们限制从 Linux Web 服务器访问的 SQL Server 数据库视图中提取一些数据。

我们不需要编辑数据,只需将其显示在网页中即可。

在我们尝试输出并且只获取文本字段的前 255 个字符之前,一切看起来都很好。

有谁知道这是否是通过 PHP::PDO 使用 FreeTDS 的问题,还是应该可以正常工作?我见过其他人有类似的问题,但似乎没有很多答案。

我使用它作为 MS SQL 数据库的连接字符串:

0 投票
1 回答
5678 浏览

php - 更改 freetds.conf 后重新启动所需的任何内容?

更改 freetds.conf 文件后,是否需要重新启动任何内容才能查看从 PHP 运行 ODBC 查询的更改?

0 投票
1 回答
686 浏览

sql-server-2005 - SSL over TDS、SQL Server 2005 Express

当使用 TLS 加密连接到 SQL Server 2005 Express 时,我捕获了 Win Xp 机器发送/接收的数据包。

讯息是什么?

服务器端捕获: