Npgsql과 Entity Framework를 설치한 후, using으로 데이터 관련 라이브러리를 추가한 후, 아래와 같이 사용할 수 있음.
기본적으로는 DbContext 모델을 만든 후, 그 모델에 접근해서 데이터를 조작한다.
여기서는 effects 라는 테이블에 id (pk), effectname (char) 라는 두 개의 컬럼이 있다고 가정하고, 기본적인 CRUD 를 해 봤다.
LINQ는 좀 더 공부를 해야할 듯.
자주 쓰면 익숙해지겠지..??
<참고>
using System;
using System.Data;
using System.Linq;
using System.Data.SqlClient;
using System.Data.Entity;
using Npgsql;
namespace NpgsqlEF6TestApp
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
using (var model = new NpgsqlEF6TestModel())
{
// insert
// 짧게 기술하면 이렇게도 가능
model.effects.Add(newEffect { effectname = "健康維持", });
// 보통은 이렇게 삽입할 개체를 만든 후 값을 대입한 후 add() -> savechanges() 함
var insertData = model.effects.Create();
insertData.effectname = "健康維持";
model.effects.Add(insertData);
model.SaveChanges();
// delete, 값을 찾아서 remove 한 후에 db에 적용
var delTargetData = model.effects.Single(p => p.id == 13);
model.effects.Remove(delTargetData);
model.SaveChanges();
// update
var UpdateTargetData = model.effects.Single(p => p.id == 1);
if (UpdateTargetData != null)
{
UpdateTargetData.effectname = "筋力強化";
model.SaveChanges();
}
// select with LINQ (query style)
var query = from effect in model.effects
orderby effect.id
select effect;
// select with LINQ (method style)
var query = model.effects
.OrderBy(effect => effect.id)
.Select(effect => effect);
// output
foreach (var item in query)
{
Console.WriteLine(item.id + ", " + item.effectname);
}
Console.WriteLine("Press any key to exit...");
Console.Read();
}
}
}
}
댓글
댓글 쓰기