红联Linux门户
Linux帮助

使用Sqlcmd在Debian终端里连接和操作SQL Server数据库

发布时间:2016-11-27 10:06:58来源:designbased.net作者:designbased
上一篇文中介绍了在 Debian 上安装 SQL Server(http://www.linuxdiyf.com/linux/26366.html),本文接着介绍一下在 linux 终端里使用 Sqlcmd 连接和操作 SQL Server 数据库。
 
安装 SQL Server 工具包
Sqlcmd 包含在 SQL Server 工具包中,安装 SQL Server 时 Sqlcmd 不会自动安装,如果还没安装,首先需要安装 SQL Server 工具包。在 Debian 上安装 SQL Server 工具包还是参考在 Ubuntu 上的安装方法,下面的步骤将会安装SQL Server tools 和 微软 ODBC 驱动。
 
1、导入公共库密匙:
curl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -
 
2、注册微软 Ubuntu 库:
curl https://packages.microsoft.com/config/ubuntu/16.04/prod.list | sudo tee /etc/apt/sources.list.d/msprod.list
 
3、执行更新和安装命令:
sudo apt-get update 
sudo apt-get install mssql-tools
 
安装完成后就可以使用 Sqlcmd 在 linux 终端连接数据库了。
 
连接 SQL Server 数据库
在 linux 中连接 SQL Server 数据库必须使用 SQL Server 身份验证。如果要连接其他电脑的 SQL Server,必须确定 SQL Server 监听的端口已打开。SQL Server 默认监听的端口是 1433,在连接前必须要打开这个端口。
 
打开 linux 终端,输入下面的命令:
sqlcmd -S localhost -U SA -P 'password'
-S 服务器名
-U 用户名
-P 登录密码
使用Sqlcmd在Debian终端里连接和操作SQL Server数据库
上图显示的是连接成功后查询服务器上的数据库的结果。
 
使用 T-SQL 新建数据库
1、使用默认设置新建一个数据库:
CREATE DATABASE testdb;
GO
使用 USE 将数据库上下文更改为刚才创建的数据库
USE testdb;
GO
2、新建一个数据表:
CREATE TABLE Student (Id INT, Name NVARCHAR(100), Sno VARCHAR(100));
GO
3、插入几条数据:
INSERT INTO Student VALUES (1, "张三", "16123456");
INSERT INTO Student VALUES (2, "李四", "16123457");
INSERT INTO Student VALUES (3, "王五", "16123458");
GO
4、查询数据:
SELECT * FROM Student;
GO
退出 sqlcmd 使用 QUIT 命令。
 
BTW:
如果运行 sqlcmd 时出现下面的错误
terminate called after throwing an instance of ‘std::runtime_error’ what(): locale::facet::_S_create_c_locale name not valid
在 linux 终端里运行下面的命令:
sodu vi /etc/locale.gen
把 en_US.UTF-8 前面的注释符号删除,如下图所示:
使用Sqlcmd在Debian终端里连接和操作SQL Server数据库
然后再运行下面的命令:
sodu locale-gen
执行完上面的操作后就可以正常运行 sqlcmd了。
 
本文永久更新地址:http://www.linuxdiyf.com/linux/26367.html