我目前有Visual Studio 2005和SQL Server 2005.我已经安装了一个空的数据库到SQL Server中,但我不知道如何使用VS来连接数据库。如何将.NET与sql数据库连接?
我应该使用什么样的项目(我将在Windows应用程序中使用数据库),以及我将如何将它插入项目并使用它?编辑:我有一个数据库在Microsoft SQL Server Managament工作室,我想用它在一个winForm中,使用C#。不知怎的,我必须连接这两个?
我目前有Visual Studio 2005和SQL Server 2005.我已经安装了一个空的数据库到SQL Server中,但我不知道如何使用VS来连接数据库。如何将.NET与sql数据库连接?
我应该使用什么样的项目(我将在Windows应用程序中使用数据库),以及我将如何将它插入项目并使用它?编辑:我有一个数据库在Microsoft SQL Server Managament工作室,我想用它在一个winForm中,使用C#。不知怎的,我必须连接这两个?
最简单的方法是使用ADO.Net,没有特殊的项目使用,只需使用一个普通的Winforms项目(你说你已经在做)。
这里有一些基本知识,您可以按照http://www.sitepoint.com/article/introduction-ado-net/
您已经几个选项 - 最简单的(也是最高性能的,理想的,或推荐的企业级应用)是通过在Visual的“服务器资源管理器”工作室。通过View ... Server Explorer ...访问并展开Data Connections节点,然后浏览新创建的数据库。
从这里你可以拖动数据源等到你的Windows应用程序。
然而,理想情况下,您可以直接使用ADO,存储过程或SQL。
您可以创建项目类型:
要连接到数据库,请使用下面的代码:
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();
我建议你拿起一本关于ADO.NET的好书,并通读它。你也可以在Google上搜索一些文章。
试试这个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();
}
}
再见
在Visual Studio你有可以打开数据源视图中的数据菜单选项。添加一个数据连接并使用向导来“定位”数据库。创建表的本地“表示”后,将该表从数据源选项卡拖到Windows窗体应用程序。
查看所有自动创建的对象,并尝试创建对象列表以及它们如何交互。你能发现连接字符串或表定义吗?
你不妨考虑一下nHibernate或者类似的ORM。与其本身使用ADO.Net相比,ORM层有助于减少容易出错的重复数据访问代码的数量。
学习曲线比跳入ADO更陡峭。网络,但不是很重要,还有很多你需要了解的东西 - 关系,交易和“商业交易”,延迟加载,无论如何你需要考虑 - 所以我会建议被迫考虑它们是没有坏事。
结帐www.nhforge.org为一些很好的入门资源。
更精确地指定 - 你需要web/WinForm/console/reusable-lib项目吗? 你将使用哪种语言(C#/ VB或报表)? – Dewfy 2009-08-18 07:15:42
编辑:我在Microsoft SQL Server Managament Studio中有一个数据库,并且我想在winForm中使用它,使用c#。不知怎的,我必须连接这两个? – 2009-08-18 07:57:12
是的 - 从服务器资源管理器中,拖动一个表并将数据源添加到您的解决方案。然后,您会发现使用DataXXX属性的表单上的控件将具有可用的DataSource(您的db)和Members/Values(表/字段)。 – penderi 2009-08-18 09:18:25