Outsider's Dev Story

Stay Hungry. Stay Foolish. Don't Be Satisfied.

MS SQL 디비 백업하기

디비를 이동해야할 경우가 있다. 일반 회사에서는 어떤식으로 하는지 아직 잘 모르겠지만 공부용 프로젝트를 하는 가운데 여기저기 똑같은 DB를 설치해야 했고 시연을 위해서 데이터를 가져가야 했다.

데이터베이스는 스키마로 만들어서 생성해 냈지만 이번경우에는 시연을 해야했기 때문에 안에 넣어놓은 데이터도 모두 백업해서 이동해야 했다.

사용자 삽입 이미지

MS SQL 2000 Server가 설치된 C:\Program Files\Microsoft SQL Server\MSSQL\Data 경로에 가면 DB 파일들이 이곳에 모여 있다. 이중에 내가 사용하는 데이터베이스의 이름으로 된 파일을 2개 찾을 수 있다. 여기선 kbay_data_mdf와 kbay_log.ldf이다.

이 2개의 파일을 복사해서 해당 데이터베이스가 설치되어야 할 같은 위치에 가서 붙혀넣는다.

사용자 삽입 이미지

엔터프라이즈 관리자에서 데이터베이스연결을 시도한다.(미리 데이터베이스를 만들지 않아도 된다.)

사용자 삽입 이미지

연결한 데이터베이스의 MDF 파일에서 ... 버튼을 누른다.

사용자 삽입 이미지

탐색기와 같은 화면이 나타나고 여기서 아까 붙혀넣은 곳에 가서 mdf파일을 선택한다.(분위기상 꼭 저 위치에 붙여넣지 않아도 되겠지만 관리를 위해선 같은 곳에 있는 것이 좋을 것이다.)

사용자 삽입 이미지

이제 그냥 확인만 눌러주면 가져온 데이터베이스가 그대로 복원된다.
2007/08/12 01:02 2007/08/12 01:02

Gridview에 DataSet을 DataBind()했을 때 페이징 하기

이것저것 하다보면 GridView에 수동으로 다른 데이터를 바인딩 시켜야 할 때가 있다. 최근에 사용했을 때는 비연결지향으로 DataSet을 얻어서 DataBind를 시켰는데 이렇게 했을때 페이징이 제대로 되지 않는 문제점이 있었다.

GridView에 DataBide를 꼭 저렇게 안하고 아래에 적혀있듯이 Datasource자체를 바꿔주는 방법을 취할 수도 있고 그럴게 했을 경우는 큰 문제가 생기지 않을 것으로 예상된다.(테스트는 못해봤지만 일단 타입이 동일하므로...)

페이징을 하려면 별도로 비하인드 코드에서 처리르 해주어댜 한다.

해당 Gridview의 속성에서 PageIndexChanging를 생성해 주고 그 Behind코드에 다음 코드를 넣어주면 된다.


protected void AllItemGridView_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
    AllItemGridView.PageIndex = e.NewPageIndex;
    AllItemGridView.DataBind();
}

Gridview의 이름이 AllitemGridView이다. 내가 찾은 코드중에는 가장 간단한 코드이며 잘 작동한다.

2007/08/12 00:22 2007/08/12 00:22