加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

freetds – 从linux终端执行ms sql server查询

发布时间:2020-12-13 23:10:05 所属栏目:Linux 来源:网络整理
导读:我需要从 linux终端查询MS SQL Server数据库.搜索网站和这个网站我找到了freetds,然后是sqsh.我已经安装了它们并且似乎连接到服务器但我无法让它执行查询,我肯定做错了什么. 我将freetds配置为: [MSSql] host = 192.168.1.4 port = 1433 tds version = 7.0
我需要从 linux终端查询MS SQL Server数据库.搜索网站和这个网站我找到了freetds,然后是sqsh.我已经安装了它们并且似乎连接到服务器但我无法让它执行查询,我肯定做错了什么.

我将freetds配置为:

[MSSql]
        host = 192.168.1.4
        port = 1433
        tds version = 7.0

数据库服务器是Sql Server 2008 r2.

连接时我使用以下命令:

sqsh -S MSSql -U sa -P sa -D databasename

这给了我一个提示:

sqsh-2.1.7 Copyright (C) 1995-2001 Scott C. Gray
Portions Copyright (C) 2004-2010 Michael Peppler
This is free software with ABSOLUTELY NO WARRANTY
For more information type 'warranty'
1>

然后我尝试输入如下查询:

1> select * from C_PROPS;

但没有任何反应.我做错了什么?只需要简单的选择和更新.

解决方法

我认为没有设置semicolon_hack变量.

你需要像这样编写命令

select * from C_PROPS
go

或者,在sqsh会话开始时

set semicolon_hack=on
go

现在你可以做到

select * from C_PROPS;

或者,在您的主目录中创建一个.sqshrc并插入此代码段

#
# $semicolon_hack : This turns on the ability to use a semicolon as
#             a sort of in-line go.  It is kind of hacky but seems
#             to work pretty well.
#
set semicolon_hack=on

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读