c#连接SQL数据库(一)

一、Connection对象概述

Connection对象是一个连接对象,主要功能是建立与物理数据库的连接。其主要包括访问数据库的对象类,也可称为数据提供程序。

  1. SQL Server ,位于System.Data.SqlClient命名空间
  2. ODBC ,位于System.Data.Odbc命名空间
  3. OLEDB,位于System.Data.OleDb命名空间
  4. Oracle,位于System.Data.OracleClient命名空间

根据使用的数据库不同,引入不同的命名空间,然后通过命名空间中的Connection对象连接类连接数据库。例如连接SQL Server数据库,首先要通过using System.Data.SqlClient命令引用SQL Server数据提供程序,然后才可以调用空间下的SqlConnection类连接数据库。

二、连接数据库

创建一个字符串对象conn,conn是数据库连接字符串。创建SqlConnection对象传递字符串,调用SqlConnection对象的Open()方法连接数据库。通过SqlConnection对象的State属性判断数据库的连接状态。
代码格式如下

string ConStr = "server="+<服务器名称(本机服务器可以用"."代替)>+";database=" + <数据库名称> + ";uid="+<用户名(可以用"sa"代替)>+";pwd="+<密码(默认可以不填或者填写"root")>+";Trusted_Connection=True;";
SqlConnection conn = new SqlConnection(ConStr);
conn.Open();
//Trusted_Connection=True;
//没加这句话我之前一直连接不上,后来想起来安装SQL的时候给了我一个字符串"Server=localhost;Database=master;Trusted_Connection=True;"我就把这句话加到了最后就连接成功了,一直连接失败的朋友可以试一试
 if (conn.State == ConnectionState.Open)
                {
                     MessageBox.Show("连接成功");
                }

示例代码

string ConStr = "server=.;database=" + textBox1.Text.Trim() + ";uid=sa;pwd=;Trusted_Connection=True;";//textBox1.Text.Trim()用于获取文本框内的字符串
SqlConnection conn = new SqlConnection(ConStr);
conn.Open();
if (conn.State == ConnectionState.Open)
                {
                     MessageBox.Show("连接成功");
                }

实际运用的时候,如果连接失败则会抛出异常,我们可以使用try-catch语句
来告诉用户连接失败。完整代码如下

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Data.SqlClient;
using System.Linq.Expressions;

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

        private void button1_Click(object sender, EventArgs e)
        {
            try
            {
                string ConStr = "server="+textBox2.Text.Trim()+";database=" + textBox1.Text.Trim() + ";uid="+textBox3.Text.Trim()+";pwd="+textBox4.Text.Trim()+";Trusted_Connection=True;";               
                SqlConnection conn = new SqlConnection(ConStr);
                conn.Open();
                if (conn.State == ConnectionState.Open)
                {
                    label2.Text = "连接成功";
                    label2.Visible = true;
                }
              
            }

            catch
            {
                MessageBox.Show("连接失败");
            }
        }  
    }
}

该代码的Form窗体
在这里插入图片描述
连接成功提示
在这里插入图片描述
连接失败提示
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/FuckerGod/article/details/106971975