プログラムからSQLServerに繋がらないときに見る記事です
SQLServerがリッスンしてしているか?
SQLServer構成マネージャー SQL Server Configuration Manager
を開いて状態が"実行中"であるかを確認します。変更を加えた場合、再起動が必要です。
TCP/IP
のプロパティにてTCPの静的ポート番号を指定します。
ファイヤーウォールで許可されているか?
SQLServerの通信が許可されていない場合は、Windows Defender ファイヤーウォールの設定で[受信の規則]を右クリックして[新しい規則]→[プログラム]→[接続を許可する]→とウィザードに従って設定します。
SQLServerの実行ファイルは、SQLServer構成マネージャーのSQLServerのサービスからプロパティを辿れば確認できます。恐らく、以下のようなパスになるかと思います。
C:\Program Files\Microsoft SQL Server\MSSQL16.SQLEXPRESS\MSSQL\Binn\sqlservr.exe
接続文字列が正しいか?
接続文字列が間違っているかも知れません。ユーザー名、パスワード、サーバー名、ポート番号、データベース名等を確認してみましょう。
Gorm
で接続できるかテスト
package main
import (
"time"
"gorm.io/driver/sqlserver"
"gorm.io/gorm"
)
func main() {
dsn := "sqlserver://testuser:p123@localhost:1433?database=testDb"
db, err := gorm.Open(sqlserver.Open(dsn), &gorm.Config{})
if err != nil {
panic("failed to connect database")
}
}
無事、接続できました