분류 전체보기
[ 인터넷에서 다운받은 이미지 파일 ] 방법1 : 좌측 상단에 "Android"로 설정 > res 폴더 우클릭 > New > Android Resource Directory > Resource Type : raw 로 설정 > OK 이제 인터넷에서 다운 받은 이미지를 드래그해서 res > raw 폴더에 넣음 방법2 : 폴더에서 다운받은 이미지 클릭, Ctrl+C > 안드로이드 스튜디오를 열어서 drawable 폴더 클릭, Ctrl+V > *drawable 선택 (아래 사진 참고) > OK > 이미지 파일 이름 설정 > OK *이 때 drawable-v24 가 아니라 그냥 drawable 폴더를 선택해야 함! 그리고 이미지 파일명은 영문 (소문자), underscore bar ( _ )만 사용하기 [ 안드로..
[ 안드로이드 Application 구조 ] MVC 모델은 Model, View, Control 로 구성되어 있다. Model (모델) : application의 data를 저장하는 영역 종류 : 안드로이드에 내장된 DB (SQLite, File), Content Provider View(뷰) : 화면을 구성하는 영역 종류 : View 클래스를 상속하는 클래스를 사용해서 구성할 수 있음 Control(컨트롤) : View, Model을 서로 연결하고 제어하는 영역 종류 : Activity, Service, Broadcast Receiver, Fragment [ 컴포넌트 활성화 및 비활성화 ] 1. 활성화 Activity - Intent 에 의해 활성화 됨 처음에 새로운 프로젝트를 생성하면, app > m..
안드로이드의 구성 요소로는 Activity / Service / Intent / Intent Filter / Broadcast Receiver / Content Provider / Notification / Fragment 등이 있다. 그리고 이 중에서 안드로이드의 4대 구성 요소 (컴포넌트)는 빨간 글씨인 Activity, Service, Broadcast Receiver, Content Provider 이다. 각각의 구성 요소가 무슨 역할을 하는지 알아보도록 하자! [ Activity ] : 사용자 인터페이스 화면을 구성하는 컴포넌트. 시각적인 사용자 인터페이스(UI)를 가짐. 사용 방법 Activity Class를 상속 받음 Activity Class의 생명주기 메서드를 재정의해서 원하는 기능을 구..
기록을 조회할 때 가장 최근꺼를 보고싶은 경우, sequence 번호 중 가장 큰 숫자를 조회하는 방법이 있다. [ Ex ] 고객이 프로그램 실행 중에 데이터를 여러 번 수정하다가 마지막에 실수로 upload 대신 delete를 눌러서 데이터를 삭제해버렸다고 하자. 이 고객은 삭제되기 전에 마지막으로 작성한 data를 가져오고싶다는 문의를 남겼다. 이 때, 우리는 어떻게 해야할까? 우선, 고객이 수정했던 기록들이 담긴 테이블을 보자. ID SEQ REMARK A 1 ... A 2 ... A 3 ... 실수한 고객의 ID는 A로 동일하므로 수정할 때마다 매겨진 SEQ (sequence number) 번호로 조회하면 된다. '가장 최근 기록'은 '가장 마지막으로 TABLE에 INSERT되었다'는 것과 같으므..
[ Transaction 사용 순서 ] BEGIN TRANSACTION -- 실행 UPDATE TABLE01 ... -- 실행 COMMIT TRANSACTION -- 실행 (수정사항을 최종 적용) ROLLBACK TRANSACTION -- 실행 (수정취소. 수정하기 이전 상태로 돌아감) UPDATE문 실행 후, 원하는 결과가 나온 것을 확인했다면 COMMIT, 원하는 결과가 나오지 않아서 BEGIN TRAN 이전 상태로 되돌리고싶다면 ROLLBACK 명령을 실행 TRANSACTION 을 줄여서 'TRAN'이라고 작성해도 무방하다. BEGIN TRAN; UPDATE .. COMMIT TRAN; [ Transaction을 사용하는 이유 ] 1. 테이블은 한 번에 1명만 접근하여 수정할 수 있다. 즉, 내가 ..
Data table을 만들고나서 data가 의도치않게 변경되거나 삭제될 경우를 대비하여 항상 data를 백업해주는게 좋다. 백업하는 방법은 아래와 같다. select * into 새로백업할테이블명 from 기존테이블 /* 예시 */ select * into table01_20210616 from table01 syntax : select 모든 데이터 into 백업 -- from 뒤에 내가 앞으로 작업할 table 이름 -- 백업할 테이블명에는 백업한 날짜도 적어주는게 좋다! -- create table 을 미리 작성해줄 필요 없이 바로 백업된 테이블이 생성된다.
* 속성은 테이블의 column명을 의미한다 [ SELECT ] SELECT 속성들 FROM 테이블명 2개의 예시를 살펴보자. [ EX1 ] select * from table01 -- 이 때, * 은 ALL (모든 속성)을 의미함 -- 즉, table01의 모든 column들을 불러와라 == table01의 전체 데이터를 가져와라 [ EX2 ] select 속성1, 속성2, 속성4 from table01 -- table01로부터 속성 1, 2, 4의 값들은 전부 가져와라 [ UPDATE ] UPDATE 테이블명 SET 변경할 속성들과 값 WHERE 조건 아래의 예시를 살펴보자. UPDATE TABLE01 SET COL1 = '' , COL2 = '' WHERE ID = '1' -- ID = 1인 REC..
string strPara = ""; strPara = txtRelation.Text.ToString(); // crystal reports 객체 생성 ReportDocument cr = new ReportDocument(); cr = new crt01(); cr.SetDataSource(dtRtn); cr.SetParameterValue("strID", strPara); // strID column에 strPara 값 전달 // crystal viewer 객체 생성 CrystalViewer a = new CrystalViewer(); a.SetReport(cr); frmPrintPreview.ShowPreview(a, "", ""); // 레포트 출력 전에 미리보기 띄움 a.Refresh();