C#如何连接数据库

 更新时间:2024年08月08日 17:01:41   作者:树大有枯枝  
这篇文章主要介绍了C#如何连接数据库问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

一、与数据库连接

1、设置连接字符串

string sqlConnStr = "Data Source=服务器名;Initial Catalog=数据库名;User ID=用户名;Password=密码";//用户密码登录
//或
string sqlConnStr = "Data Source=服务器名;Initial Catalog=数据库名;Integrated Security=true;//主机用户登录 IntegratedSecurity这个字段表示是否使用用户名密码登录

2、获取数据库连接

using System.Data.SqlClient;

SqlConnection sqlConnection = new SqlConnection(sqlConnStr);

3、打开数据库连接

try
{
	sqlConnection.Open();
}
catch(Exception ex)
{
    Console.WriteLine(ex.Message);
}

打开数据库的时候注意需要捕捉异常

4、进行SQL语句执行

  • 4.1、获取count计数
string sql = "select 1";
SqlCommand cmd = new SqlCommand();//创建SQL语句处理对象
//或SqlCommand cmd = new SqlCommand(sql,sqlConnection);//构造函数绑定
cmd.Connection = sqlConnection;//绑定连接
cmd.CommandText = sql;//绑定SQL语句
int count = (int)cmd.ExecuteScalar();

ExecuteScalar() : 作用是获取返回表上的第一个单元格的数据

  • 4.2、获取多列数据ExecuteReader()
string sql = "select 1,2,3";
//省略绑定
SqlDataReader sqlDataReader = cmd.ExecuteReader();//数据对象
while (sqlDataReader.Read())//read方法 :前进到下一条记录  并且是否有下一行记录
{
    int a =(int)sqlDataReader[0];
    int a =(int)sqlDataReader[1];
    int a =(int) sqlDataReader[2];//索引从0开始,按单元格检索
    // int a = sqlDataReader["字段名"];使用数据库中的字段名同样可以
}

ExecuteReader() : 执行SQL 语句返回一个sqlDataReader传递数据

  • 4.3、执行增删改操作ExecuteNonQuery()
string sql = delete from [数据库];
//省略绑定步骤
int line = cmd.ExecuteNonQuery();//返回记录更改的行数

ExecuteNonQuery() :执行后返回增删改所改变的行数

5、关闭连接或者流

if (sqlDataReader != null)
{
    sqlDataReader.Close();
}
if (cmd != null)
{
    cmd.Dispose();
}
if (sqlConnection != null)
{
    sqlConnection.Close();
}

二、主要SQL回忆

1、增

insert into [表名](字段1,字段2···) values(值1,值2···);

2、删

delete from [表名] where [条件]

3、改

update [表名] set 字段名 = 值 ,第二个修改 where [条件]

4、查

select * from [数据库] where [字段名] = 值;

总结

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

相关文章

  • 事务在c#中的使用

    事务在c#中的使用

    这篇文章介绍了事务在c#中的使用,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-05-05
  • C#实现飞行棋游戏

    C#实现飞行棋游戏

    这篇文章主要为大家详细介绍了C#实现飞行棋游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-07-07
  • C#特性-迭代器(上)及一些研究过程中的副产品

    C#特性-迭代器(上)及一些研究过程中的副产品

    这篇文章主要介绍了C#特性-迭代器(上)及一些研究过程中的副产品,需要的朋友可以参考下
    2014-12-12
  • C#中查找Dictionary中重复值的方法

    C#中查找Dictionary中重复值的方法

    这篇文章主要介绍了C#中查找Dictionary中重复值的方法,有需要的朋友可以参考一下
    2014-01-01
  • C#执行系统命令的方法

    C#执行系统命令的方法

    这篇文章主要介绍了C#执行系统命令的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-01-01
  • C#中IsNullOrEmpty和IsNullOrWhiteSpace的使用方法及区别解析

    C#中IsNullOrEmpty和IsNullOrWhiteSpace的使用方法及区别解析

    今天我们将探讨C#中两个常用的字符串处理方法:IsNullOrEmpty和IsNullOrWhiteSpace,本文中,我们将详细解释这两个方法的功能和使用场景,并帮助您更好地理解它们之间的区别,本文结合实例代码给大家介绍的非常详细,需要的朋友参考下吧
    2023-07-07
  • C#调用微信接口的相关代码

    C#调用微信接口的相关代码

    这篇文章主要为大家详细介绍了C#调用微信接口的相关代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-07-07
  • C#配置文件操作类分享

    C#配置文件操作类分享

    这篇文章主要分享了C#配置文件操作类,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-06-06
  • WPF基础教程之元素绑定详解

    WPF基础教程之元素绑定详解

    这篇文章主要给大家介绍了关于WPF基础教程之元素绑定的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-01-01
  • C# OpenCvSharp实现图片批量改名

    C# OpenCvSharp实现图片批量改名

    这篇文章主要为大家详细介绍了C#如何结合OpenCvSharp实现图片批量改名功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下
    2024-03-03

最新评论