SQLHelper 도움말 클래스다음 (다 중 데이터베이스 패키지 지원)
1. config 설정 파일:
<connectionStrings>
<add name="constr" connectionString="server=127.0.0.1;user id= ;password= ;database= "/>
connectionStrings>
<appSettings>
<add key="database" value ="MYSQL"/>
appSettings>
연결 문자열 에 대한 SQLHelper 도움말 클래스위. 소개 하 다 http://www.cnblogs.com/fengxuehuanlin/p/5271944.html
2. SqlHelper:
1 private static string connstr;
2 ///
3 /// ,
4 /// key :database,value :
5 /// name:constr
6 ///
7 static SqlHelper()
8 {
9 connstr = ConfigurationManager.ConnectionStrings["constr"].ConnectionString; // config
10 string databaseType = ConfigurationManager.AppSettings["database"].ToUpper();
11 DBdatabase.database = AdoHelper.EnumParse(databaseType); //
12 }
13
14 ///
15 ///
16 ///
17 ///
18 public static IDbConnection getConnection()
19 {
20 string value = DBdatabase.database.ToString();
21 DatabaseList database= AdoHelper.EnumParse(value);
22 switch(database)
23 {
24 case DatabaseList.MYSQL:
25 return new MySqlConnection(connstr);
26 case DatabaseList.SQLSERVER:
27 return new SqlConnection(connstr);
28 default:
29 throw new Exception(" !");
30 }
31 }
32
33 ///
34 /// ,
35 ///
36 /// Sql
37 ///
38 /// DataTable
39 public static DataTable ExecuteQuery(string Sql, params IDbDataParameter[] parameter)
40 {
41 using (IDbConnection conn=getConnection())
42 using (IDbCommand cmd = conn.CreateCommand())
43 {
44 conn.Open();
45 cmd.CommandText = Sql;
46 for (int i = 0; i < parameter.Length; i++)
47 {
48 cmd.Parameters.Add(parameter[i]);
49 }
50 DataTable tab = new DataTable();
51 using (IDataReader reader = cmd.ExecuteReader())
52 {
53 tab.Load(reader);
54 return tab;
55 }
56 }
57 }
58 ///
59 ///
60 ///
61 /// Sql
62 ///
63 ///
64 public static int ExecuteNonQuery(string Sql, params IDbDataParameter[] parameter)
65 {
66 using (IDbConnection conn = getConnection())
67 using (IDbCommand cmd = conn.CreateCommand())
68 {
69 conn.Open();
70 cmd.CommandText = Sql;
71 for (int i = 0; i < parameter.Length; i++)
72 {
73 cmd.Parameters.Add(parameter[i]);
74 }
75 return cmd.ExecuteNonQuery();
76 }
77 }
78 ///
79 /// ,
80 ///
81 ///
82 ///
83 /// object
84 public static object ExecuteScalar(string Sql, params IDbDataParameter[] parameter)
85 {
86 using (IDbConnection conn=getConnection())
87 using (IDbCommand cmd = conn.CreateCommand())
88 {
89 conn.Open();
90 cmd.CommandText = Sql;
91 for (int i = 0; i < parameter.Length; i++)
92 {
93 cmd.Parameters.Add(parameter[i]);
94 }
95 return cmd.ExecuteScalar();
96 }
97 }
98 ///
99 /// ,
100 ///
101 ///
102 ///
103 ///
104 public static IDataReader ExecuteReader(string Sql, params IDbDataParameter[] parameter)
105 {
106 using (IDbConnection conn = getConnection())
107 using (IDbCommand cmd = conn.CreateCommand())
108 {
109 conn.Open();
110 cmd.CommandText = Sql;
111 for (int i = 0; i < parameter.Length; i++)
112 {
113 cmd.Parameters.Add(parameter[i]);
114 }
115 return cmd.ExecuteReader(CommandBehavior.CloseConnection);
116 }
117 }
118 }
119 ///
120 ///
121 ///
122 public class DBdatabase
123 {
124 public static DatabaseList database { get; set; }
125 }
126 public class AdoHelper
127 {
128 ///
129 ///
130 ///
131 ///
132 ///
133 ///
134 public static T EnumParse(string value)
135 {
136 return (T)Enum.Parse(typeof(T), value);
137 }
138
139 ///
140 ///
141 ///
142 ///
143 ///
144 public static IDbCommand CreateCommand(IDbConnection conn)
145 {
146 IDbCommand cmd = conn.CreateCommand();
147 conn.Open();
148 return cmd;
149 }
150 }
151 ///
152 ///
153 ///
154 public enum DatabaseList
155 {
156 MYSQL = 0,
157 SQLSERVER = 1
158 }
:https://www.cnblogs.com/fengxuehuanlin/p/5354670.html
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.