C#连接数据库_使用读取配置文件的方式

  1 using System;
  2 using System.Collections.Generic;
  3 using System.Configuration;
  4 using System.Data.SqlClient;
  5 using System.Linq;
  6 using System.Text;
  7 using System.Threading.Tasks;
  8 using System.Data;
  9
 10 namespace Students.DAL
 11 {
 12     public class DBHelper
 13     {
 14         public static readonly string conn = ConfigurationManager.ConnectionStrings["ClassRoomConnectionString"].ToString();
 15         public static SqlConnection connection = new SqlConnection(DBHelper.conn);
 16
 17         /// <summary>
 18         /// 增删改数据
 19         /// </summary>
 20         /// <param name="sql"></param>
 21         /// <returns></returns>
 22         public static int ExecuteNonQuery(string sql, SqlParameter[] par)
 23         {
 24             try
 25             {
 26                 connection.Open();   //打开数据库连接
 27                 SqlCommand comm = new SqlCommand(sql, connection);
 28                 //comm.CommandType = System.Data.CommandType.StoredProcedure;
 29                 comm.Parameters.AddRange(par);
 30                 return comm.ExecuteNonQuery();
 31             }
 32             catch
 33             {
 34                 throw;
 35             }
 36             finally
 37             {
 38                 connection.Close();
 39             }
 40         }
 41         /// <summary>
 42         /// 增删改数据
 43         /// </summary>
 44         /// <param name="sql"></param>
 45         /// <returns></returns>
 46         public static int ExecuteNonQuery(string sql, SqlParameter[] par, string sql2, SqlParameter[] par2)
 47         {
 48             connection.Open();   //打开数据库连接
 49             SqlTransaction tra = connection.BeginTransaction();
 50             try
 51             {
 52                 SqlCommand comm = new SqlCommand(sql, connection);
 53                 SqlCommand comm2 = new SqlCommand(sql2, connection);
 54                 comm.Parameters.AddRange(par);
 55                 comm2.Parameters.AddRange(par2);
 56                 comm.Transaction = tra;
 57                 comm2.Transaction = tra;
 58                 int num1 = comm.ExecuteNonQuery();
 59                 int num2 = comm2.ExecuteNonQuery();
 60                 int num = comm.ExecuteNonQuery() + comm2.ExecuteNonQuery();
 61                 tra.Commit();
 62                 return num;
 63             }
 64             catch
 65             {
 66                 tra.Rollback();
 67                 throw;
 68             }
 69             finally
 70             {
 71                 connection.Close();
 72             }
 73         }
 74         /// <summary>
 75         /// 查询数据
 76         /// </summary>
 77         /// <param name="sql"></param>
 78         /// <returns></returns>
 79         public static SqlDataReader ExecuteReader(string sql, SqlParameter[] par)
 80         {
 81             try
 82             {
 83                 connection.Open();   //打开数据库连接
 84                 SqlCommand comm = new SqlCommand(sql, connection);
 85                 //comm.CommandType = System.Data.CommandType.StoredProcedure;
 86                 comm.Parameters.AddRange(par);
 87                 return comm.ExecuteReader(CommandBehavior.CloseConnection);
 88             }
 89             catch
 90             {
 91                 throw;
 92             }
 93         }
 94         /// <summary>
 95         /// 查询数据
 96         /// </summary>
 97         /// <param name="sql"></param>
 98         /// <returns></returns>
 99         public static SqlDataReader ExecuteReader(string sql)
100         {
101             try
102             {
103                 connection.Open();   //打开数据库连接
104                 SqlCommand comm = new SqlCommand(sql, connection);
105                 return comm.ExecuteReader(CommandBehavior.CloseConnection);
106             }
107             catch
108             {
109                 throw;
110             }
111         }
112         /// <summary>
113         /// 返回单个值
114         /// </summary>
115         /// <param name="sql"></param>
116         /// <returns></returns>
117         public static object ExecuteScalar(string sql, SqlParameter[] par)
118         {
119             try
120             {
121                 connection.Open();   //打开数据库连接
122                 SqlCommand comm = new SqlCommand(sql, connection);
123                 //comm.CommandType = System.Data.CommandType.StoredProcedure;
124                 comm.Parameters.AddRange(par);
125                 return comm.ExecuteScalar();
126             }
127             catch
128             {
129                 throw;
130             }
131             finally
132             {
133                 connection.Close();
134             }
135         }
136     }
137 }

然后再App.config文件中写连接语句

 1 <?xml version="1.0" encoding="utf-8" ?>
 2 <configuration>
 3     <startup>
 4         <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
 5     </startup>
 6   <connectionStrings>
 7     <add name ="ClassRoomConnectionString"
 8            connectionString="Data Source=.;Initial Catalog=StudentDB;User ID=sa;Password=sa"
 9            providerName="System.Data.SqlClient"/>
10   </connectionStrings>
11 </configuration>
时间: 2024-10-10 18:24:54

C#连接数据库_使用读取配置文件的方式的相关文章

Java_dbc连接数据库_使用读取配置文件的方式

1 package com.homewoek3_4.dao; 2 3 import java.io.IOException; 4 import java.io.InputStream; 5 import java.sql.Connection; 6 import java.sql.DriverManager; 7 import java.sql.PreparedStatement; 8 import java.sql.ResultSet; 9 import java.sql.SQLExcepti

笔记(一) C#连接数据库_使用读取配置文件的方式

using System; 2 using System.Collections.Generic; 3 using System.Configuration; 4 using System.Data.SqlClient; 5 using System.Linq; 6 using System.Text; 7 using System.Threading.Tasks; 8 using System.Data; 9 10 namespace Students.DAL 11 { 12 public c

C3P0数据库连接池-方式2读取配置文件的方式

package com.itheima.c_c3p0; import java.sql.Connection; import java.sql.SQLException; import javax.sql.DataSource; import com.mchange.v2.c3p0.ComboPooledDataSource; public class C3P0Utils { //提供连接池 private static DataSource dataSource = new ComboPool

Java读取配置文件的方式

Java读取配置文件的方式-笔记 1       取当前启动目录下的配置文件 一般来讲启动java程序的时候,在启动的目录下会有配置文件 classLoader.getResource("").getFile()  会取到java当前启动项目的目录,然后指定对应的配置文件路径即可比如conf/conf.properties //取当前启动目录的配置文件 String filePath =classLoader.getResource("").getFile()+&q

python读取配置文件的方式

python读取配置文件的方式 1.从config.ini中读取,后缀无所谓,文件名字也无所谓,不过config.ini是常用写法,所谓见名知意 config.ini内容: [global] ip = xxx port = xxx table = xxx uname = xxx passwd = xxx 读取方法 import configparser import os dir_now = os.path.dirname(os.path.dirname(os.path.abspath("set

DBCP连接池-方式1通过读取配置文件

连接池核心类DataSource 基于这个这个核心类,创建连接池也有多种方式,下面是方式一,通过读取配置文件的方式,创建数据库的连接池. DBCPUtils.java package com.itheima.a_dbcp; import java.io.InputStream; import java.sql.Connection; import java.sql.SQLException; import java.util.Properties; import javax.sql.DataSo

scala读取jar包外配置文件的方式

在scala的开发过程中,经常会修改程序的参数,将这些参数放到配置文件中避免了重复编译,然而打包的过程,如果不做配置文件外置,将无法修改配置内容,还是需要重新打包 这里给出读取配置文件的三种方式 方式一: 这是最常见的读取配置文件方式 val postgprop = new Properties()val ipstream: InputStream = this.getClass().getResourceAsStream("/config.properties")postgprop.

java中读取配置文件ResourceBundle和Properties两种方式比较

今天在开发的时候,需要把一些信息放到配置文件中,方便后续的修改,注意到用的是ResourceBundle读取配置文件的方式,记得之前也见过使用Properties的方式,就比较好奇这两种方式的区别,网上查了一下和查了一下Java API手册,简单总结记录一下: ResourceBundle和Properties的一个主要区别就是ResourceBundle支持语言国际化,当程序需要特定于语言环境的对象时,它使用 getBundle 方法加载 ResourceBundle 类: Locale lo

java反射机制例子,反编译,以及通过读取配置文件降低耦合

本文不多做文字描述,通过代码可以说明一切,简单直观. //这边以反编译String类为例子,将反编译结果输入到文件. 1.ReflectTest.java 1 import java.io.File; 2 import java.io.FileReader; 3 import java.io.FileWriter; 4 import java.lang.reflect.Constructor; 5 import java.lang.reflect.Field; 6 import java.lan