C#连接数据库代码示例

C#连接数据库代码示例

代码逻辑

声明连接对象
创建数据库链接
打开链接
创建要执行的SQL语句
创建用于执行SQL语句的对象
执行SQL操作并打印返回数据
关闭数据库链接

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data;
using System.Data.SqlClient;

namespace SQLServer_Connect
{
    class Program
    {
        static void Main(string[] args)
        {
            //声明连接对象
            //方法一
            SqlConnectionStringBuilder scsb = new SqlConnectionStringBuilder();
            scsb.DataSource = "xxx.xxx.xxx.xxx";
            scsb.UserID = "xxx";
            scsb.Password = "xxx";
            scsb.InitialCatalog = "test";

            方法二
            //string connStr = "Data Source=192.168.91.7;Initial Catalog=test;User ID=PbUser;Password=1234";
            将 scsb.ToString() 替换为 connStr

            //创建链接
            SqlConnection conn = new SqlConnection(scsb.ToString());

            //判断是否已经有链接
            if (conn.State == ConnectionState.Closed)
            {
                //打开链接
                conn.Open();
                Console.WriteLine("已连接到{0}数据库", scsb.InitialCatalog);
                Console.WriteLine();
            }

            //创建要执行的SQL语句
            string sqlStr = "select ScoreID, StudentID, Name, CourseName, Score from dbo.Students a " +
                "inner join dbo.Score b on a.Scode = b.StudentID " +
                "inner join dbo.Course c on c.CourseID = b.CourseID";

            //创建用于执行SQL语句的对象
            SqlCommand comm = new SqlCommand(sqlStr, conn);
            //参数一:SQL语句字符串;参数二:已经打开的数据库连接对象

            //执行comm对象
            SqlDataReader sdr = null;
            try
            {
                sdr = comm.ExecuteReader();
                while (sdr.Read())
                {
                    Console.WriteLine("名字:" + sdr["Name"].ToString());
                    Console.WriteLine("学科:" + sdr["CourseName"].ToString());
                    Console.WriteLine("成绩:" + sdr["Score"].ToString());
                    Console.WriteLine("----------------------------------------------");
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
            finally
            {
                conn.Close();
            }
            Console.Read();
        }
    }
}

异常是在程序执行期间出现的问题。C# 中的异常是对程序运行时出现的特殊情况的一种响应,比如尝试除以零。
C# 以 try 和 catch 块的形式提供了一种结构化的异常处理方案。使用这些块,把核心程序语句与错误处理语句分离开。这些错误处理块是使用 try、catch和finally关键字实现的。
try:一个 try 块标识了一个将被激活的特定的异常的代码块。后跟一个或多个 catch 块。
catch:程序通过异常处理程序捕获异常。catch 关键字表示异常的捕获。
finally:finally 块用于执行给定的语句,不管异常是否被抛出都会执行。例如,如果您打开一个文件,不管是否出现异常文件都要被关闭。

在这里插入图片描述

查询结果

在这里插入图片描述

  • 6
    点赞
  • 36
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值