Introduction to database interaction with C# Introduction to database interaction with C# sql sql

Introduction to database interaction with C#


I would suggest investing your time in learning Microsoft SQL Server itself, Data Access Application Block from Enterprise Library and ADO.NET Entity Framework.

Entry point for learning SQL Server is here -> SQL Server Developer Center
Entry point for learning ADO.NET is here -> Learning ADO.NET at MSDN

First of all, in order to gain a good understanding of what ADO.NET is, check the links below:

Learn how to write direct queries in C# to SQL Server without using any frameworks and ORM tools, then proceed to learning more advanced technologies in ADO.NET family.

See also:

You may also want to download LINQPad, which is perfect tool for playing with LINQ.

Also I suggest subscribing to ADO.NET related RSS feeds:

Also check existing open source projects at CodePlex.com which use these technologies and digg into their source codes.

Great books on the subject for you:


UPDATE: One thing this answer didn't have in the past is links to information for SQL and database newbies, so I will put some relevant links here as well so that you (or anyone else) can brush up on their SQL and other database design skills.

A lot of this is taken from another answer I have written today, but it goes into detail about your exact issues:

Original Answer:

This sounds like you more or less need a basic introduction to connecting and manipulating a database from C#. The above poster said to look into LINQ to SQL, but you can also look into the more basic underlying framework of ADO.NET which will get you to understand the basics of how it works.

Also, you can use this site right here for a number of different database tutorials for C#.

Edit: More information from C# Station, CodeProject, and Codersource

Edit 2: If you are interested in things like Linq to SQL as others have mentioned above, here are some tutorials from C# Corner, and C-Sharp Online

Edit 3: Others would also suggest things such as the ADO.NET Entity Framework. I would not necessarily suggest this for beginners who still need to grasp the fundamentals of working with a database. Here is some information from the MSDN Overview

Simple Example (This is pulled directly from the C# Station link given above)

Listing 1. Using a SqlConnection

using System;using System.Data;using System.Data.SqlClient;/// <summary>/// Demonstrates how to work with SqlConnection objects/// </summary>class SqlConnectionDemo{    static void Main()    {        // 1. Instantiate the connection        SqlConnection conn = new SqlConnection(            "Data Source=(local);Initial Catalog=Northwind;             Integrated Security=SSPI");        SqlDataReader rdr = null;        try        {            // 2. Open the connection            conn.Open();            // 3. Pass the connection to a command object            SqlCommand cmd =                 new SqlCommand("select * from Customers", conn);            //            // 4. Use the connection            //            // get query results            rdr = cmd.ExecuteReader();            // print the CustomerID of each record            while (rdr.Read())            {                Console.WriteLine(rdr[0]);            }        }        finally        {            // close the reader            if (rdr != null)            {                rdr.Close();            }            // 5. Close the connection            if (conn != null)            {                conn.Close();            }        }    }}


Personally, I think it is good to understand what it is these "frameworks" do. I would start with some basic queries to attempt to get a handle on how SQL works. You may not end up using it that much once you get started, but I've always found it is easier to understand why I need a framework if I can understand what it is doing for me.