Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- kanna html parser
- VBA
- EXIF data
- StreamReader
- 자전거
- C#
- 파이썬
- 대전
- MDB
- Exif
- insert into
- 스위프트
- 딴지일보 자유게시판 파씽
- swift
- 엑셀
- file move
- python
- Xcode
- html parser
- 대전 자전거
- euc-kr
- swift html parser
- 달력
- dataset
- exifread
- 대전 업힐
- 유성
- kanna parser
- 노은
- mdb table 합치기
Archives
- Today
- Total
Fly to the sky & Return
mdb 데이터베이스 자료 업데이트 하기 본문
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.
기존 mdb파일에 추가로 데이터를 집어 넣을 경우 Insert into query를 이용해서 추가할수 있습니다.
모조리 다 추가해서 중복되는 자료 삭제하는 방법이 있을 수 있구여
하지만 기존 자료의 마지막 index 를 구하고 그것보다 큰 자료만 Insert 하는 방법이 있습니당.
기존 자료 마지막 index 구하고 그것보다 큰 자료 즉 새로운 데이터만 추가하는 방법을 알아보도록 하겠습니다.
다음코드는 기존 자료에서 DataSet을 만들어 Datatable로 변환후에 마지막 데이터의 특정위치 값을 찾아는 소스입니다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | private static int LastRowNumber(string targetPath) { DataConn conn1 = new DataConn(); DataSet ds; string DB_path = targetPath; string sql = @"SELECT * from info"; ds = conn1.GetDataset(sql, DB_path); DataTable dt = ds.Tables[0]; DataRow lastRow = dt.Rows[dt.Rows.Count - 1]; int Lastinfo = Convert.ToInt32(lastRow[0]); return Lastinfo; } | 위cs |
다음 코드는 위에서 마지막 데이터의 index 를 이용하여 새로운 데이터가 있으면 추가하는 함수입니다.
추가할 데이터가 있는 위치는 db_path2
업데이트 되어야 할 데이터 위치는 db_path 입니다.
즉 db_path 에 db_path2 데이터 중에 새로운 데이터가 추가되는 것이지용.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 | private void mdbInsert() { string db_path2 = System.IO.Path.Combine(sourcePath, fileName); int RowNuber = LastRowNumber(db_path); string connStr = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + db_path + ";Jet OLEDB:Database Password="; OleDbConnection conn = new System.Data.OleDb.OleDbConnection(connStr); OleDbCommand cmd = new OleDbCommand(); cmd.Connection = conn; conn.Open(); string sql = @"insert into simple select * from [" + db_path2 + "; PWD =].[simple] Where simple.info_index > " + RowNuber; cmd.CommandText = sql; cmd.ExecuteNonQuery(); conn.Close(); conn.Open(); string sql1 = @"insert into info select * from [" + db_path2 + "; PWD =].[info] Where info.index > " + RowNuber; cmd.CommandText = sql1; cmd.ExecuteNonQuery(); conn.Close(); } | cs |
위 두가지 함수를 이용해서 업데이트 코드를 완성하면 될것입니다.
'프로그래밍 > c# & VB 등' 카테고리의 다른 글
c# tabcontrol 상에서 function key 분배하기 (0) | 2020.02.27 |
---|---|
C# 라벨 프린터 출력을 위한 준비 (0) | 2019.01.21 |
dataset 마지막 Row 값 알아내기 (0) | 2018.01.30 |
다중 모니터를 이용한 번호 전광판 시스템 만들어보기 (0) | 2016.09.08 |
[c#] 선택된 폴더 내부에 있는 MDB 파일들 마다 들어있는 특정 테이블을 합치기 (최종완성본) (0) | 2016.04.04 |