1

今年夏天我正在学习 C# 课程,在当前任务中我将使用数据库。非常有趣,我很想开始工作,但我现在完全迷失了(也许我的血糖很低)!根据任务的需要,我必须使用断开连接的方法,使用 DataSets 或 dataTables、DataAdapters 和 CommandBuilders 将数据库的副本加载到内存中以使用它(打开、读取和关闭),然后当我想更新数据库,做相反的事情(打开,保存和关闭)

我创建了一个 SQL Server 2008 数据库,还创建了一个表。嗯,现在怎么办!?我想我必须开始连接到数据库并选择表。从这里开始,我会欣赏一些提示。期待入手!谢谢!

4

3 回答 3

2

它取决于两个参数

1. your amount of data has to update

2. the update frequency

如果你觉得这两个参数很重要并且会拖慢你的应用程序,那么使用离线模式。

数据量可以减轻带宽

下面是一个例子

    var adapter = new SqlDataAdapter();
    var dataSet = new DataSet();

    using(var connection = new SqlConnection(connetionString))
    {
        connection.Open();
        adapter.SelectCommand = new SqlCommand("Your query", connection);
        adapter.Fill(dataSet);
        connection.Close();

        //Print results  
        for (i = 0; i <= dataSet.Tables[0].Rows.Count - 1; i++)
        {
            MessageBox.Show(dataSet.Tables[0].Rows[1].ItemArray[1].ToString());
        }
    }
于 2012-07-30T14:35:50.890 回答
2

您可以使用SqlConnection对象进行连接。它位于System.Data.SqlClient命名空间中。当您在断开或连接的情况下工作时,您将希望熟悉这些对象。我提供的链接中有一些示例代码。

您需要一个连接字符串来传递给构造函数。如果您的数据库在本地运行,它可能看起来像这样。

string connectionString = "Data Source=localhost;Initial Catalog=TheNameOfYourDatabase;Integrated Security=SSPI";

using (SqlConnection connection = new SqlConnection(connectionString))
{
   connection.Open();
}

就这么简单。由于对象 implements IDisposable,您可以使用该using语句以便对象适当地处理清理(在这种情况下,默认情况下,连接将返回到连接池)。

之后,您可以查看一下,SqlCommand以便开始对您的数据库发出命令。

于 2012-07-30T14:36:50.607 回答
1

实际上,您有几种方法可用。从 DataReader 和 DBCommand 开始,一直到 ORMs 实体框架和 POCO。随着您提高抽象级别,它们为您做的事情越来越多,但除非您了解基础知识,否则您可以做自己想做的事情的空间越来越小。

如果我是你,我会从梯子底部开始

那就是 SqlConnection、SqlCommand、SqlParameter 和 SqlDataReader

不要走 Wally the Wizard,单击一个按钮,Visual Studio 会为您完成所有路由。它们适用于两种类型的人,一种是知道自己在做什么,一种是不想知道...

大量的教程,但如果我是你。我会得到一本像样的 C# 编程书,翻到关于数据库的章节并阅读并做,再读一遍再做。发现这些东西真的很难的人,是那些不费心去做的人。

当你这样做了,你就会知道足够多,如果你需要的话,你会回来问一些体面的问题。

于 2012-07-30T14:45:44.037 回答