I. Driver Configuration ​

(Ⅰ) Maven Configuration (Suitable for 2017 Version) ​

xml
<mssql.version>9.4.0.jre8</mssql.version>
<dependency>
  <groupId>com.microsoft.sqlserver</groupId>
  <artifactId>mssql-jdbc</artifactId>
  <version>${mssql.version}</version>
</dependency>

(Ⅱ) Offline Driver Download ​

mssql-jdbc-7.4.1.jre8.jarmssql-jdbc-9.4.0.jre8.jarmssql-jdbc-12.2.0.jre8.jar

II. JDBC Connection Configuration ​

yaml
pamirs:
  datasource:
    base:
      type: com.alibaba.druid.pool.DruidDataSource
      driverClassName: com.microsoft.sqlserver.jdbc.SQLServerDriver
      url: jdbc:sqlserver://127.0.0.1:1433;DatabaseName=base
      username: xxxxxx
      password: xxxxxx
      initialSize: 5
      maxActive: 200
      minIdle: 5
      maxWait: 60000
      timeBetweenEvictionRunsMillis: 60000
      testWhileIdle: true
      testOnBorrow: false
      testOnReturn: false
      poolPreparedStatements: true
      asyncInit: true

Note: For more YAML configurations, please refer to Module API.

(Ⅰ) Connection URL Configuration ​

No official documentation available currently.

(Ⅱ) URL Format ​

plain
jdbc:sqlserver://${host}:${port};DatabaseName=${database}

Warning:

When configuring the JDBC connection, both ${database} and ${schema} must be fully configured and cannot be omitted.

For other connection parameters, you can refer to relevant materials for optimization as needed.

III. Dialect Configuration ​

(Ⅰ) pamirs Dialect Configuration ​

yaml
pamirs:
  dialect:
    ds:
      base:
        type: MSSQL
        version: 2017
        major-version: 2017
      pamirs:
        type: MSSQL
        version: 2017
        major-version: 2017

Note: For more YAML configurations, please refer to Module API.

Database VersiontypeversionmajorVersion
2017MSSQL20172017

Note:

Since the dialect development environment is the 2017 version, other similar versions generally will not have significant differences. If you encounter issues with unsupported versions, please leave a comment below the document.

(Ⅱ) Schedule Dialect Configuration ​

yaml
pamirs:
  event:
    enabled: true
    schedule:
      enabled: true
      dialect:
        type: MSSQL
        version: 2017
        major-version: 2017
typeversionmajorVersion
MSSQL20172017

Note:

As there are no obvious differences in the schedule dialect across multiple versions, only one dialect configuration is provided currently.

IV. Other Configurations ​

(Ⅰ) Logical Deletion Value Configuration ​

yaml
pamirs:
  mapper:
    global:
      table-info:
        logic-delete-value: CAST(DATEDIFF(S, CAST('1970-01-01 00:00:00' AS DATETIME), GETUTCDATE()) AS BIGINT) * 1000000 + DATEPART(NS, SYSUTCDATETIME()) / 100

(Ⅱ) MSSQL Database User Initialization and Authorization ​

sql
-- init root user (user name can be modified by oneself)

CREATE LOGIN [root] WITH PASSWORD = 'password';

-- if using mssql database, this authorization is required.
ALTER SERVER ROLE [sysadmin] ADD MEMBER [root];