그 당시 ADO.NET 의 필 기 를 배 웠 습 니 다.

3267 단어 ADO.NET
그 해 에 저 는 ADO.NET 을 배 웠 습 니 다.그 해 에 ASP.NET 을 배 운 후에 ASP.NET 의 새로운 지식 을 배우 기 시 작 했 습 니 다.ADO.NET 은 데이터 베 이 스 를 방문 하 는 데 사용 되 었 고 보통 연결 모델 과 비 연결 모델 로 나 눌 수 있 습 니 다.연결 모드 란 데이터 에 접근 할 때 데이터베이스 와 계속 연결 을 유지 하고 데 이 터 를 방문 한 후에 야 데이터베이스 와 연결 을 끊 는 것 을 말한다.주로 사용 하 는 ADO.NET 대상 은 Connection,Command,DataReader 등 이다.연결 모드 란 데이터 세트 를 통 해 데이터 베 이 스 를 조작 하고 데 이 터 를 메모리 에 읽 어 데이터 조작 을 완성 하 는 것 을 말 하 며,데이터 집 회 는 데이터베이스 에 자동 으로 업데이트 되 며,주로 ADO.NET 대상 은 DataAdapter,DataSet 등 이다.다음 코드 를 보 겠 습 니 다.이 예제 코드 는 공장 모델 을 사용 하면 소량의 코드 만 바 꾸 어 데이터 베 이 스 를 전환 할 수 있 습 니 다.공장 모델 은 사용 할 대상 이 다음 과 같은 몇 가지 가 있 습 니 다.DbProvider Factory,DbConnection,DbTransaction,DbCommand,DbDataReader,DbDataAdapter,DbCommandBuilder 등 이 있 습 니 다.1.공 통 된 연결 문자열
 
string ProviderName = "System.Data.SqlClient";
string ConnStr = "Data Source=.;Initial Catalog=Northind;Integrated Security=True";
string sqlStr = "select * from dbo.Categories";
2.비 연결 모델 코드 는 다음 과 같다
 
public void getSqlConnection()
{
// ,
DbProviderFactory dbf = DbProviderFactories.GetFactory(ProviderName);
//
DbConnection conn = dbf.CreateConnection();
//
conn.ConnectionString = ConnStr;
conn.Open();
DbTransaction ts = conn.BeginTransaction();
DbCommand dbcmd = null;
try
{
dbcmd = dbf.CreateCommand();
dbcmd.CommandText = sqlStr;
dbcmd.Connection = conn;
dbcmd.Transaction = ts;
DbDataReader dr = dbcmd.ExecuteReader();
while (dr.Read())
{
Console.WriteLine(dr[1].ToString());
}
dr.Close();
ts.Commit();
}
catch (Exception e)
{
ts.Rollback();
}
finally
{
conn.Close();
if (dbcmd != null)
{
dbcmd.Dispose();
}
}
}
효과:
3.연결 모드 코드:
 
public void getDataSetConnection()
{
// ,
DbProviderFactory dbf = DbProviderFactories.GetFactory(ProviderName);
//
DbConnection conn = dbf.CreateConnection();
//
conn.ConnectionString = ConnStr;
// DataAdapter
DbDataAdapter da = dbf.CreateDataAdapter();
// sql
DbCommandBuilder dbCmdb = dbf.CreateCommandBuilder();
using (DbCommand dbcmd = dbf.CreateCommand())
{
dbcmd.CommandText = sqlStr;
dbcmd.Connection = conn;
//DbDataAdapter
da.SelectCommand = dbcmd;
//DbCommandBuilder dataAdpter
dbCmdb.DataAdapter = da;
DataSet ds = new DataSet();
da.Fill(ds);
// ds.Tables[0].Rows[0].Delete();
da.Update(ds);
DataTable dt = ds.Tables[0];
DataRow dr;
for (int i = 0; i < dt.Rows.Count; i++)
{
dr = dt.Rows[i];
Console.WriteLine(dr[1] + " " + dr[2]);
}
}
}
효과:
4.567916 이상 은 간단 한 예 입 니 다.정상 적 인 상황 에서 연결 문자열 을 문자열 로 쓰 지 않 고 config 파일 에 넣 어야 합 니 다.마찬가지 로 SQL 문 구 는 저장 과정 으로 바 뀌 어서 바 꾸 는 것 이 편리 합 니 다.그 동안 ADO.NET 을 배 웠 고 데이터 베 이 스 를 어떻게 방문 하 는 지 알 게 되 었 습 니 다.지금 은.NET 에 새로운 방법 이 생 겼 습 니 다.예 를 들 어 Linq,DbContext 등 을 사용 하 는 것 입 니 다.이 글 은 그 해 공부 한 날 들 을 회상 하고 있다.

좋은 웹페이지 즐겨찾기