C#数据库连接方式(类的形式)

 更新时间:2023年07月12日 10:25:34   作者:不想学习只想玩  
这篇文章主要介绍了C#数据库连接方式(类的形式),具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

C#数据库连接(类的形式)

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Data.SqlClient;
namespace systemprotect
{
    class DataCon
    {
        static string strCon = "server=.;database =自己的数据库名;uid=sa;pwd=自己的数据库密码";//数据库连接串
        SqlConnection conn = new SqlConnection(strCon);
        public SqlDataReader query(string str)//查询
        {
            if (this.conn.State == System.Data.ConnectionState.Closed)//判断连接是否打开
            {
                this.conn.Open();
            }
            SqlCommand cmd = new SqlCommand(str, conn);
            return cmd.ExecuteReader();
        }
        public int insert(string str)//插入,删除,更新 返回影响的行数
        {
            if (this.conn.State == System.Data.ConnectionState.Closed)
            {
                this.conn.Open();
            }
            SqlCommand cmd = new SqlCommand(str, conn);
            return cmd.ExecuteNonQuery();
        }
        public void close()//关闭连接
        {
            conn.Close();
        }
    }
}

C#连接数据库的步骤和相关的方法调用

//第一步:创建Connection 数据库连接对象
            SqlConnection conn = new SqlConnection("server = . ; uid = sa ; pwd = jnos;database = JINGDONGDB");
            //第二步:打开连接数据库
            conn.Open();
            //第三步:使用数据库
            string sql = $@"select ProductNo, ProductName, ProductImage, 
                            Price,password from Product where ProductNo={_ProductNo}and password='{_password}'";//@符号表示可以换行,代码也连接在一起
            SqlCommand command = new SqlCommand(sql,conn);
            SqlDataReader reader = command.ExecuteReader();//
            if (reader.Read())
            {
                string ProductNo = reader["ProductNo"].ToString();
                string ProductName = reader["ProductName"].ToString();
                MessageBox.Show($"欢迎{ProductName}登录成功");
            }//在数据库里面是为  next() 有数据为 true 没有数据为 flase
            else
            {
                MessageBox.Show("账号或密码错误,请重新输入!");
            }
            //int resule = command.ExecuteNonQuery();//添加、删除、修改(返回行数受影响)接SqlCommand command = new SqlCommand(sql,conn);
                                                                    //行 是添加删除修改的步骤
            //object result = command.ExecuteScalar();//查询聚合函数用到
            //if(resule > 0)
            //{
            //    MessageBox.Show("删除成功");
            //}
            //else
            //{
            //    MessageBox.Show("删除失败");
            //}
            //第四步:关闭连接对象
            conn.Close();

相关的方法调用

  • command.ExecuteNonQuery:添加、删除、修改(返回行数受影响
  • command.ExecuteScalar:查询聚合函数
  • command.ExecuteReader:查询单列函数

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • C#字符串数组转换为整形数组的方法

    C#字符串数组转换为整形数组的方法

    这篇文章主要介绍了C#字符串数组转换为整形数组的方法,涉及C#数组遍历与转换的相关技巧,需要的朋友可以参考下
    2015-06-06
  • c#设计模式之单例模式的实现方式

    c#设计模式之单例模式的实现方式

    这篇文章主要给大家介绍了关于c#设计模式之单例模式的实现方式,文中通过示例代码介绍的非常详细,对大家的学习或者使用c#具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-11-11
  • 基于C#实现的屏幕指定区域截屏代码

    基于C#实现的屏幕指定区域截屏代码

    这篇文章主要介绍了C#实现的屏幕指定区域截屏代码,有需要的朋友可以参考一下
    2014-01-01
  • C# 以MDF文件链接数据库的示例代码

    C# 以MDF文件链接数据库的示例代码

    本篇文章主要介绍了C# 以MDF文件链接数据库的示例代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-09-09
  • c# datetime方法应用介绍

    c# datetime方法应用介绍

    本文将详细介绍c# datetime方法应用,需要了解更多的朋友可以参考下
    2012-11-11
  • C#实现的SN快速输入工具实例

    C#实现的SN快速输入工具实例

    这篇文章主要介绍了C#实现的SN快速输入工具,以实例的形式详细讲述了C#实现序列号快速输入的方法,是非常实用的技巧,需要的朋友可以参考下
    2014-11-11
  • C#正则过滤HTML标签并保留指定标签的方法

    C#正则过滤HTML标签并保留指定标签的方法

    这篇文章主要介绍了C#正则过滤HTML标签并保留指定标签的方法,涉及C#针对页面HTML元素正则匹配与替换相关操作技巧,需要的朋友可以参考下
    2017-06-06
  • c# Winform 程序自动更新实现方法

    c# Winform 程序自动更新实现方法

    Winform程序自动更新我也是第一次做,网上找了自动更新的源码,后来又根据在网上看到的一些方法,自己试了很久,最终还是有写错误,所以花了钱让别人帮忙调试成功的,下面是我自己捣腾出来的,方便大家借鉴,如果有什么错误的地方欢迎指正
    2017-02-02
  • C#生成条形码图片的简单方法

    C#生成条形码图片的简单方法

    这篇文章主要介绍了C#生成条形码图片的简单方法,实例分析了了条形码图片的生成原理与实现方法,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-01-01
  • c#使用win32api实现获取光标位置

    c#使用win32api实现获取光标位置

    本文给大家汇总了2个使用C#实现获取光标位置的代码,非常的简单实用,第二种方法更为全面,推荐给大家。
    2016-02-02

最新评论