C#中的经典代码.docx
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
在C#编程中,开发人员经常需要处理数据库操作,如增删改查。这些基本操作在Web应用或桌面应用中都是常见的任务。以下是从提供的文件中提取的C#经典代码示例,涉及到如何使用ADO.NET(主要是SqlConnection和SqlCommand)与SQL Server数据库进行交互。 1. **增加数据**: 当需要向数据库表中插入新记录时,可以使用以下代码模板: ```csharp using System.Data.SqlClient; // 连接字符串 SqlConnection conn = new SqlConnection("DataSource=.;Initial Catalog=数据库名称;Integrated Security=True"); try { conn.Open(); // 插入SQL语句,注意字符型和数字型的占位符 string sql = string.Format("insert into 表名 values('{0}',{1},'{2}')", this.textBox1.Text, int.Parse(this.textBox2.Text), this.textBox3.Text); SqlCommand comm = new SqlCommand(sql, conn); int number = comm.ExecuteNonQuery(); if (number > 0) { MessageBox.Show("插入成功"); } else { MessageBox.Show("插入失败"); } } catch (Exception ex) { MessageBox.Show("数据库异常"); } finally { // 始终关闭连接 conn.Close(); } ``` 在这个例子中,我们使用`SqlConnection`打开数据库连接,然后创建一个`SqlCommand`对象执行SQL插入语句。字符串类型的值需要被单引号包围,而整数类型则不需要。执行`ExecuteNonQuery()`返回受影响的行数,如果大于0表示插入成功。 2. **删除数据**: 要删除表中的一条记录,可以按照以下方式编写代码: ```csharp // 连接字符串 SqlConnection conn = new SqlConnection("DataSource=.;Initial Catalog=数据库名称;Integrated Security=True"); try { conn.Open(); // 删除SQL语句 string sql = string.Format("delete from 表名 where 列名={0}", int.Parse(this.textBox2.Text)); SqlCommand comm = new SqlCommand(sql, conn); int number = comm.ExecuteNonQuery(); if (number > 0) { MessageBox.Show("删除成功"); } else { MessageBox.Show("删除失败"); } } catch (Exception ex) { MessageBox.Show("数据库异常"); } finally { conn.Close(); } ``` 这里,我们根据指定的条件(通常是主键)删除记录,同样需要捕获异常并确保连接关闭。 3. **修改数据**: 更新数据库中的记录可按以下步骤进行: ```csharp // 连接字符串 SqlConnection conn = new SqlConnection("DataSource=.;Initial Catalog=数据库名;Integrated Security=True"); try { conn.Open(); // 修改SQL语句 string sql = string.Format("update 表名 set 数据库列名=’{0}’,数据库列名={1}", this.textBox1.Text, int.Parse(this.textBox2.Text)); SqlCommand comm = new SqlCommand(sql, conn); int number = comm.ExecuteNonQuery(); if (number > 0) { MessageBox.Show("更新成功"); } else { MessageBox.Show("更新失败"); } } catch (Exception ex) { MessageBox.Show("数据库异常"); } finally { conn.Close(); } ``` 更新操作是通过设置`SqlCommand`的SQL更新语句,并调用`ExecuteNonQuery()`来完成的。 4. **查询数据**: 查询数据库并将结果绑定到下拉列表(ComboBox)控件: ```csharp string name = ""; SqlConnection conn = new SqlConnection("DataSource=.;Initial Catalog=数据库名;Integrated Security=True"); try { conn.Open(); // 查询SQL语句 string sql = "select 某列 from 表名"; SqlCommand comm = new SqlCommand(sql, conn); SqlDataReader dr = comm.ExecuteReader(); while (dr.Read()) { name = dr["数据库某列名"].ToString(); // 读取并添加到ComboBox this.comboBox1.Items.Add(name); } dr.Close(); } catch (Exception ex) { MessageBox.Show("数据库异常"); } finally { conn.Close(); } ``` 在这个例子中,我们使用`SqlDataReader`遍历查询结果,将每一项读取出来并添加到ComboBox控件中。 在实际应用中,应考虑异常处理、参数化查询以防止SQL注入攻击,以及使用using语句块自动管理资源以确保最佳实践。此外,为了提高性能,可以使用连接池,尤其是在高并发环境下。同时,考虑到数据库设计的规范化和数据完整性,确保所有字段类型与数据库字段类型匹配,避免不必要的数据转换。最后,对于用户输入的数据,进行适当的验证以防止无效数据导致的错误。
- 粉丝: 1w+
- 资源: 6万+
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助