A Ruby library providing simple and fast FreeTDS bindings for connecting to Microsoft SQL Server databases.
TinyTDS is a Ruby library that provides bindings to FreeTDS, allowing Ruby applications to connect to and interact with Microsoft SQL Server databases. It solves the problem of database connectivity by offering a simple, fast API for executing queries, iterating over results, and handling SQL Server data types with proper encoding.
Ruby developers building applications that need to connect to Microsoft SQL Server or Azure SQL Database, especially those using ActiveRecord with the SQL Server adapter.
Developers choose TinyTDS because it is the default connection mode for the ActiveRecord SQL Server adapter, offers automatic type casting and UTF-8 encoding support, and is specifically optimized for SQL Server connectivity with features like Azure compatibility and thread safety.
TinyTDS - Simple and fast FreeTDS bindings for Ruby using DB-Library.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Converts SQL Server data types to native Ruby objects, including date/time with timezone options, simplifying data handling without manual parsing.
Defaults to UTF-8 encoding with intelligent error handling on reads/writes and UTF-16 support for emojis, ensuring reliable internationalization.
Fully tested with Azure SQL Database, requiring specific connection options like :azure for seamless cloud database connectivity.
Built to work with connection pools for multithreaded operations, making it safe for concurrent database access in Ruby apps.
Offers a simple interface with only three core classes (Client, Result, Error), reducing the learning curve for common SQL tasks.
Requires FreeTDS to be installed and configured externally, adding deployment complexity and potential compatibility issues across platforms.
Does not support datetimeoffset types and relies on FreeTDS protocol versions for full type casting, limiting edge-case compatibility.
Installation varies by OS, with manual compilation needed on some systems and pre-compiled gems only for specific platforms, complicating setup.
Solely for SQL Server, making it unsuitable for projects that need to support multiple database systems or switch databases easily.