A Go database driver for Microsoft SQL Server and Sybase ASE using FreeTDS, supporting stored procedures and multiple resultsets.
gofreetds is a Go database driver that provides connectivity to Microsoft SQL Server and Sybase ASE databases using the FreeTDS library. It solves the problem of accessing SQL Server from Go applications with support for advanced features like stored procedures, multiple resultsets, and database mirroring that are often required in enterprise environments.
Go developers building applications that need to interact with Microsoft SQL Server or Sybase ASE databases, especially those requiring stored procedure support or working in environments with database mirroring.
Developers choose gofreetds because it offers a native, feature-rich alternative to other SQL Server drivers for Go, with explicit support for stored procedures, output parameters, and Sybase compatibility, all while integrating with the standard database/sql interface.
Go Sql Server database driver.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Acts as a drop-in driver for Go's database/sql package, enabling easy adoption in projects that rely on the standard library without major code changes.
Handles calling stored procedures with return values, output parameters, and multiple resultsets, explicitly filling a gap noted in other Go SQL Server drivers.
Supports database mirroring and failover configurations, providing high-availability features essential for enterprise SQL Server deployments.
Allows scanning query results directly into Go structs, reducing boilerplate code for data mapping and improving developer productivity.
Requires FreeTDS libraries to be installed on the system, complicating setup and deployment, especially in cloud-native or cross-platform scenarios.
As a wrapper around FreeTDS, it may lag behind in supporting new SQL Server features and has a smaller ecosystem compared to pure Go drivers like go-mssqldb.
Relies on CGO for integration, which can introduce performance overhead and make cross-compilation more challenging, affecting development flexibility.