C#程序连接数据库及读取数据库中字段的简单方法总结

针对您提出的问题,我将给出一份详细的攻略。

C#程序连接数据库及读取数据库中字段的简单方法总结

简介

在实际应用中,很多C#程序会需要连接数据库。本文将对于该问题进行探讨,并给出两条示例说明。

步骤

1. 导入所需要的命名空间

我们需要使用 System.Data.SqlClient 命名空间中的类来进行数据库连接和操作,所以我们需要在引入命名空间中添加该命名空间。

using System.Data.SqlClient;

2. 创建SqlConnection对象

这是连接数据库的第一步,我们需要创建一个SQL连接对象,并传递数据库连接字符串。数据库连接字符串描述了连接数据库的信息,包括服务器名称,用户名,密码,数据库名称等。

SqlConnection conn = new SqlConnection("连接字符串");

3. 打开连接

在完成上一步骤后,我们需要手动调用 Open 方法打开连接。连接打开时会尝试与数据库建立连接,如果连接成功,便可以执行后续的数据库操作。

// 打开连接
conn.Open();

4. 创建SqlCommand对象

SqlCommand 对象用于将 SQL 命令发送到数据库并执行命令。我们需要将需要发送的 SQL 命令以字符串形式进行创建,并传递给 SqlCommand 对象。

string sql = "SELECT * FROM table";
SqlCommand command = new SqlCommand(sql, conn);

5. 读取数据

至此,我们已经成功查询了数据库,接下来就是对查询结果进行数据读取的操作,具体的步骤如下:

// 获得查询结果的集合对象,也就是查询结果的行集合
SqlDataReader reader = command.ExecuteReader();

// 使用 while 循环,将查询结果的行记录一行一行读取出来
while (reader.Read())
{
    // 获取读取行记录的字段的值,并存入变量中
    string fieldValue = reader.GetString(reader.GetOrdinal("column_name"));
    // 在这里可以继续对 fieldValue 变量进行操作
}

// 关闭查询结果集合对象和连接
reader.Close();
conn.Close();

示例

下面提供两个更为详细的代码示例。

示例一

该示例展示了如何使用 C# 程序连接 Oracle 数据库,并读取其中一个表格的数据。

using System;
using System.Data;
using System.Data.OracleClient;
using System.Windows.Forms;

namespace OracleConnectionTest
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        // 连接字符串
        string connStr = "Data Source=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=127.0.0.1)(PORT=1521))(CONNECT_DATA=(SERVICE_NAME=orcl)));User Id=system;Password=root";

        private void button1_Click(object sender, EventArgs e)
        {
            using (OracleConnection conn = new OracleConnection(connStr))
            {
                try
                {
                    // 打开连接
                    conn.Open();

                    // SQL 查询语句
                    string sql = "SELECT * FROM EMPLOYEE";

                    using (OracleCommand cmd = new OracleCommand(sql, conn))
                    {
                        OracleDataReader reader = cmd.ExecuteReader();

                        while (reader.Read())
                        {
                            Console.WriteLine(reader.GetString(reader.GetOrdinal("EMP_ID")));
                            Console.WriteLine(reader.GetString(reader.GetOrdinal("EMP_NAME")));
                            Console.WriteLine(reader.GetString(reader.GetOrdinal("DEPT_ID")));
                            Console.WriteLine();
                        }

                        reader.Close();
                    }
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex.Message);
                }
            }
        }
    }
}

示例二

该示例展示了如何使用 C# 程序连接 SQLite 数据库,并读取其中一个表格的数据。

using System;
using System.Data;
using System.Data.SQLite;

namespace SQLiteConnectionTest
{
    class Program
    {
        // 连接字符串
        static string connStr = "Data Source=sqlite.db;Version=3;";

        static void Main(string[] args)
        {
            using (SQLiteConnection conn = new SQLiteConnection(connStr))
            {
                try
                {
                    // 打开连接
                    conn.Open();

                    // SQL 查询语句
                    string sql = "SELECT * FROM Employee";

                    using (SQLiteCommand cmd = new SQLiteCommand(sql, conn))
                    {
                        SQLiteDataReader reader = cmd.ExecuteReader();

                        while (reader.Read())
                        {
                            Console.WriteLine(reader.GetString(reader.GetOrdinal("EmpID")));
                            Console.WriteLine(reader.GetString(reader.GetOrdinal("EmpName")));
                            Console.WriteLine(reader.GetString(reader.GetOrdinal("DeptID")));
                            Console.WriteLine();
                        }

                        reader.Close();
                    }

                    // 关闭连接
                    conn.Close();
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex.Message);
                }
            }
        }
    }
}

结论

以上便是利用 C# 程序连接数据库及读取数据库中字段的方法总结。读者可以根据自己的实际需求和所使用的不同数据库,来完成相应的连接和读取操作。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C#程序连接数据库及读取数据库中字段的简单方法总结 - Python技术站

(0)
上一篇 2023年5月22日
下一篇 2023年5月22日

相关文章

  • Mysql避免重复插入数据的4种方式

    下面是Mysql避免重复插入数据的4种方式的完整攻略,包含示例说明。 1.使用UNIQUE约束 可以在建表的时候,指定某个字段为UNIQUE,这样当插入数据的时候,如果该字段的值已经存在,则会插入失败,进而避免重复插入。 示例: 假设我们要创建一张用户表,其中email字段需要保证唯一,可以这样定义: CREATE TABLE user ( id INT(1…

    database 2023年5月19日
    00
  • MySQL索引命中与失效代码实现

    MySQL索引是优化查询性能的重要手段,但它的正确使用并不简单,许多开发者缺乏深入的理解。在本文中,我将分享MySQL索引命中与失效的完整攻略,包括基本概念、优化策略和代码实现等内容。 什么是MySQL索引? MySQL索引,即B-Tree索引,是对表中一个或多个列的值进行排序的数据结构。MySQL使用B-Tree索引来处理SELECT、UPDATE和DEL…

    database 2023年5月22日
    00
  • MySQL在线开启或禁用GTID模式

    以下是详细讲解MySQL在线开启或禁用GTID模式的攻略。 什么是GTID模式 GTID(Global Transaction ID)是MySQL 5.6引入的新特性,它可以跟踪在所有复制集群在所有服务器上执行过的每个事务,用于提高高可用性和易维护性。GTID分为两个模式: 开启GTID模式: 当启用GTID模式时,每个写操作都会被标记为一个全局唯一的ID,…

    database 2023年5月22日
    00
  • asp.net 预防SQL注入攻击之我见

    下面我将详细讲解 “ASP.NET 预防 SQL 注入攻击之我见” 的完整攻略。 什么是 SQL 注入攻击? SQL 注入攻击是指黑客通过在网站表单或 url 参数等输入处提交恶意 sql 代码,以达到绕过验证和授权机制,进一步进行数据库攻击甚至控制整个网站系统的攻击行为。 预防 SQL 注入攻击的措施 使用参数化查询 参数化查询是指在执行 SQL 语句时,…

    database 2023年5月21日
    00
  • SQL删除语句DROP、TRUNCATE、 DELETE 的区别

    当我们使用SQL进行数据管理时,删除数据是一个非常关键的操作。这时候,就涉及到三种不同的删除语句:DROP、TRUNCATE以及DELETE。这三种语句的作用是相似的,但每一种语句的实现方式都不同。下面我们详细讲解一下这三种语句的区别。 DROP语句 DROP语句用于完全删除表(table)、视图(view)、索引(index)等数据库对象。执行DROP语句…

    database 2023年5月21日
    00
  • Java8(291)之后禁用了TLS1.1使JDBC无法用SSL连接SqlServer2008的解决方法

    问题描述: 在 Java8(291) 之后,默认禁用了 TLS1.1,这会导致使用 JDBC 连接 SQL Server 2008 时无法使用 SSL 进行连接。那么如何解决这个问题呢? 解决方法: 升级 SQL Server 版本 首先,可以考虑升级 SQL Server 到支持更高安全协议的版本。例如,SQL Server 2012 及以上版本默认支持 …

    database 2023年5月22日
    00
  • Ubuntu安装MySQL-python方法

    以下是Ubuntu安装MySQL-python的完整攻略。 安装MySQL-python 在Ubuntu上安装MySQL-python,需要首先安装pip和MySQL开发包。 安装pip Ubuntu 18.04及以上版本,pip已经默认安装。可以通过以下命令确认pip是否已安装: pip –version 如果提示“Command ‘pip’ not f…

    database 2023年5月22日
    00
  • 分享几个简单MySQL优化小妙招

    欢迎来到“分享几个简单MySQL优化小妙招”的攻略。下面将详细讲解几条优化MySQL的小技巧。 1. 合理使用索引 索引是提高MySQL查询效率的重要手段之一。在创建表时,我们应该合理地为表的某些字段添加索引,以便加速查询操作。 当然,索引也不能乱加。如果在表中对每个字段都添加索引,虽然能够加快查询速度,但却降低了插入、更新、删除数据的效率。因此,在添加索引…

    database 2023年5月19日
    00
合作推广
合作推广
分享本页
返回顶部