2009-08-18 9 views
1

J'ai actuellement Visual Studio 2005 et SQL Server 2005. J'ai installé une base de données vide dans SQL Server, mais je n'ai aucune idée de comment utiliser VS pour se connecter à la base de données.Comment connecter .NET avec la base de données sql?

Quel type de projet dois-je utiliser (je vais utiliser la base de données dans une application Windows) et comment puis-je l'insérer dans le projet et l'utiliser?

EDIT: J'ai une base de données dans Microsoft SQL Server Managament Studio, et je veux l'utiliser dans un winForm, en utilisant C#. Je dois connecter ces deux en quelque sorte?

+0

Précisez plus précisément - avez-vous besoin de projet web/WinForm/console/reusable-lib? Quelle langue allez-vous utiliser (C#/VB ou rapport du tout)? – Dewfy

+0

EDIT: J'ai une base de données dans Microsoft SQL Server Managament Studio, et je veux l'utiliser dans un winForm, en utilisant C#. Je dois connecter ces deux en quelque sorte? –

+0

Ouais - à partir de l'explorateur de serveur, faites glisser une table et un DataSource devrait être ajouté à votre solution. Vous constaterez alors que les contrôles de votre formulaire avec les propriétés DataXXX auront DataSource (votre db) et Members/Values ​​(tables/fields) disponibles. – penderi

Répondre

1

La manière la plus simple est d'utiliser ADO.Net, il n'y a pas de projet spécial à utiliser, il suffit d'utiliser un projet Winforms normal (ce que vous avez dit que vous faites déjà).

Voici quelques notions de base que vous pouvez suivre http://www.sitepoint.com/article/introduction-ado-net/

1

Vous avez quelques options - le plus facile (mais moins performant, idéal ou recommandé pour une utilisation échelle de l'entreprise) est via le « serveur Explorer » dans Visual Studio. Accès via View ... Server Explorer ... et développez le nœud Data Connections, et parcourez votre base de données nouvellement créée. De là, vous pouvez faire glisser des sources de données, etc. sur votre application Windows.

Idéalement cependant vous utiliseriez ADO, procédure stockée ou SQL directement.

3

Vous pouvez créer soit du type de projet:

  1. application Web
  2. Application Windows
  3. Application console
  4. Web Service
  5. Bibliothèque de classes

Pour vous connecter à base de données, utilisez le code ci-dessous:

SqlDataReader rdr = null; 
SqlConnection conn = new SqlConnection("Data Source=(local);Initial Catalog=Northwind;Integrated Security=SSPI"); 
conn.Open(); 
SqlCommand cmd = new SqlCommand("select * from Customers", conn); 
rdr = cmd.ExecuteReader(); 
conn.Close(); 
conn.Dispose(); 

Je vous suggère de prendre un bon livre sur ADO.NET et de le lire. Vous pouvez également rechercher des articles sur Google.

2

essayer cette ADO.NET Sample Application

using System; 
using System.Data; 
using System.Data.OleDb; 

class Sample 
{ 
    public static void Main() 
    { 
    OleDbConnection nwindConn = new OleDbConnection("Provider=SQLOLEDB;Data Source=localhost;Integrated Security=SSPI;Initial Catalog=northwind"); 

    OleDbCommand catCMD = nwindConn.CreateCommand(); 
    catCMD.CommandText = "SELECT CategoryID, CategoryName FROM Categories"; 

    nwindConn.Open(); 

    OleDbDataReader myReader = catCMD.ExecuteReader(); 

    while (myReader.Read()) 
    { 
     Console.WriteLine("\t{0}\t{1}", myReader.GetInt32(0), myReader.GetString(1)); 
    } 

    myReader.Close(); 
    nwindConn.Close(); 
    } 
} 

bye

0

Dans Visual Studio vous avez une option de menu de données qui peut ouvrir une vue des sources de données. Ajoutez une connexion de données et utilisez l'assistant pour «cibler» la base de données. Après avoir créé une 'représentation' locale d'une table, faites glisser cette table de l'onglet source de données vers votre application de formulaire Windows.

Examinez tous les objets créés automatiquement et essayez de créer une liste d'objets et leur interaction. Pouvez-vous repérer la chaîne de connexion ou la définition de la table?

0

Vous pouvez envisager nHibernate ou un ORM similaire. Plutôt que d'utiliser nativement ADO.Net, la couche ORM peut vous aider à réduire le nombre d'erreurs à l'origine d'un code d'accès aux données répétitif auquel vous avez droit.

La courbe d'apprentissage est plus raide que de sauter dans ADO.Net, mais pas de manière significative, et beaucoup de choses dont vous aurez besoin d'apprendre - les relations, les transactions et les «transactions commerciales», le chargement paresseux, vous devrez réfléchir de toute façon - donc je suggère que d'être obligé de penser à eux pas de mauvaise chose.

Passez à la caisse www.nhforge.org pour obtenir de superbes ressources.

Questions connexes