TDS Generic
- ADO.NET Provider for old Sybase and Microsoft SQL Server databases
- Provider is no longer maintained
- Exists in namespace Mono.Data.TdsClient and assembly Mono.Data.TdsClient
- Does not require a client library
- Requires the assembly Mono.Data.Tds.dll which implements the TDS protocol
- Uses TDS Protocol Version 4.2 by default
Using
Prerequisites
- Have a working mono and mcs installed
- Have access to a Sybase or Microsoft SQL Server database or either download it:
- If using Microsoft SQL Server 2000, make sure you are using at least Service Pack 3 for Microsoft SQL Server 2000
- Located at mcs/class/System.Data/Test is a test for System.Data.SqlClient named SqlTest.cs and you could use this as a basis for your test.
Connection String Format
- Has a connection string format:
Server=hostname;Database=databaseName;User ID=userid;Password=password
- The Server part can be used two ways:
- hostname - "Server=MYHOST"
- hostname,port - "Server=MYHOST,1533"
using System; using System.Data; using Mono.Data.TdsClient; public class Test { public static void Main(string[] args) { string connectionString = "Server=localhost;" + "Database=pubs;" + "User ID=myuserid;" + "Password=mypassword;"; IDbConnection dbcon; dbcon = new TdsConnection(connectionString); dbcon.Open(); IDbCommand dbcmd = dbcon.CreateCommand(); string sql = "SELECT fname, lname " + "FROM employee"; dbcmd.CommandText = sql; IDataReader reader = dbcmd.ExecuteReader(); while(reader.Read()) { string FirstName = (string) reader["fname"]; string LastName = (string) reader["lname"]; Console.WriteLine("Name: " + FirstName + " " + LastName); } // clean up reader.Close(); reader = null; dbcmd.Dispose(); dbcmd = null; dbcon.Close(); dbcon = null; } }
- Building C# Example:
- Save the example to a file, such as, TestExample.cs
- Build using Mono C# compiler:
mcs TestExample.cs -r:System.Data.dll -r:Mono.Data.TdsClient.dll
- Running the Example:
mono TestExample.exe