CentOS安装SQL Server

下载地址

https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads

测试可以下载下面的版本

image-20230201154636131

CentOS安装

验证Python环境

1
2
sudo alternatives --config python
sudo yum -y install python2 compat-openssl10

下载官方yum源

1
sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/7/mssql-server-2019.repo

安装 SQL Server

1
sudo yum install -y mssql-server

初始化配置SqlServer并启动服务

1
sudo /opt/mssql/bin/mssql-conf setup

查看SQLserver运行状态

1
systemctl status mssql-server

查看进程及端口

1
2
3
ps -aux|grep mssql

netstat -anlpt|grep 1433

默认的用户名是sa,密码为自己设置的密码。

SQL语法

常用数据类型:

  • char: 定长的非Unicode字符,char(n)

  • nchar: 定长的Unicode字符,nchar(n)

  • varchar: 非定长的非Unicode字符,varchar(n)

  • nvarchar: 非定长的Unicode字符,nvarchar(n)

  • numeric: 精确数值型,numeric(精确长度,小数位)

  • decimal: 精确数值型,decimal(精确长度,小数位)

创建数据库

1
2
3
4
5
6
7
8
9
10
11
12
13
CREATE DATABASE zdb
ON
(NAME=zdb, /*zdb(每条语句都要用逗号分隔)*/
FILENAME='/var/opt/mssql/data/zdb.mdf', /*设置文件路径*/
SIZE=10MB, /*文件初始容量为10MB*/
MAXSIZE=UNLIMITED, /*文件可增长到充满磁盘*/
FILEGROWTH=10%) /*文件每次可增加容量的百分之十*/
LOG ON
(NAME=zdb_log, /*该日志文件的逻辑名称为zdb_log(每条语句都要用逗号分隔)*/
FILENAME='/var/opt/mssql/data/zdb_log.ldf', /*设置文件路径*/
SIZE=3MB, /*文件初始容量为3MB*/
MAXSIZE=5MB, /*文件可增长到5MB*/
FILEGROWTH=1MB) /*文件每次可增加1MB*/

创建表

1
2
3
4
5
CREATE TABLE t_user (
id int NOT NULL ,
name nvarchar(100) NULL ,
PRIMARY KEY ("id")
);

插入数据

1
2
insert into t_user(id,name) values(5,'xiaoming_mssql');
insert into t_user(id,name) values(6,'xiaohong_mssql');

客户端

https://learn.microsoft.com/zh-cn/sql/ssms/download-sql-server-management-studio-ssms?view=sql-server-ver16

或者

DBever

https://dbeaver.io/

链接:https://pan.baidu.com/s/1XjhohO-JV7_PTPaD85sEtg
提取码:psvm

Java连接

添加依赖

1
2
3
4
5
6
<!--连接SQL Server-->
<dependency>
<groupId>com.microsoft.sqlserver</groupId>
<artifactId>sqljdbc4</artifactId>
<version>4.0</version>
</dependency>

测试代码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
import java.sql.*;

public class SQLServerTest {
public static void main(String[] args) throws Exception {
Statement stmt;
ResultSet rs;
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
String url = "jdbc:sqlserver://192.168.7.101:1433;DatabaseName=zdb;";
String uname = "sa";
String pwd = "Jian19901024";
Connection conn = DriverManager.getConnection(url, uname, pwd);
System.out.println(conn.getClass().getName());
//发送sql语句
stmt = conn.createStatement();
//建立ResultSet结果集对象,执行sql语句
String sql = "select * from t_user";
rs = stmt.executeQuery(sql);
while (rs.next()) {
int id = rs.getInt("ID");
String name = rs.getString("NAME");
System.out.printf("id:%s name:%s%n", id + "", name);
}
}
}