엑세스 2일차
기억장치접근속도(빠름→느림)
레지스터(cpu)→캐시메모리(SRAM)→주기억장치(DRAM)→보조기억장치(자기디스크→자기테이프)
기억장치용량(대용량→소용량)
보조기억장치(자기테이프→자기디스크)→주기억장치(DRAM)→캐시메모리(SRAM)→레지스터(CPU)
레지스터 : 휘발성메모리임.
휘발성메모리 : 레지스터, 캐시메모리, RAM 등
비휘발성메모리 : ROM, 디스크 등
분석 및 디버그로그 : 제어판→관리 도구→이벤트 뷰어→보기에서 분석 및 디버그 로그 표시를 선택할 수 있다.
물리적 단위 : 비트→바이트→워드
논리적단위 : 필드→레코드→파일→데이터베이스
데이터베이스의 특징
-데이터를 여러 사람이나 프로그램이 공유할 수 있다.
-프로그램과 독립적으로 데이터의 관리가 가능하다
-애플리케이션의 개발 및 유지 보수가 용이하다
-데이터의 중복을 최소화하여 데이터의 일괄성 및 무결성을 유지할 수 있다.
-특징 : 실시간 접근성, 계속적인 변화, 동시 공유, 내용에 의한 참조, 데이터의 독립성
DBMS의 장단점
장점
데이터의 중복 최소화, 데이터 공유, 일관성, 무결성, 보안성 유지, 최신의 데이터 유지, 데이터의 표준화 가능, 데이터의 논리적, 물리적 독립성, 용이한 데이터 접근, 데이터 저장 공간 절약
단점
데이터베이스 전문가 필요, 많은 비용 부담, 데이터 백업과 복구가 어려움, 시스템의 복잡함, 대용량 디스크로 액세스가 집중되면 과부하가 발생, 처리 속도 느림
데이터 베이스 관리 시스템
기능 : 정의 기능, 조작 기능, 제어기능
데이터베이스 언어
데이터 정의 언어(DDL)
데이터 조작 언어(DML)
데이터 제어 언어(DCL)
엑셀
표시형식에서 숫자 나타내는 기호
0 : 항상 자리수를 맞춰줘라.(필수)
# : 불필요한 자릿수는 표시하지 말아라.(선택)
엑세스
표시형식에서 숫자 나타내는 기호
0 : 항상 자릿수를 맞춰줘라. (필수) 덧셈 뺄셈 기호 사용 불가능,(공백사용불가)
# : 불필요한 자릿수는 표시하지 말아라. (선택) 덧셈 뺄셈 가능(공백사용가능)
9 : 덧셈, 뺄셈 기호 사용 불가능(공백사용가능)예) 전화번호, 우편번호등을 표시할때 사용된다고 보면 됨.
날짜
엑셀에서 오늘날짜는 Today()
엑세스 오늘 날짜 : DATE()
엑셀 & 엑세스 오늘 날짜 와 시간 : NOW()
엑셀에서 DATE(년, 월, 일) 형식으로 사용
엑세스에서는 Dateserial(년, 월, 일)
=Year(Date())
In ("A","B","C","D","F") / "A" OR "B" OR "C" OR "D" OR "F"
BETWEEN 0 AND 100 / >=0 And <=100
;남;여 입력후 ENTER => ;₩남;₩여
양수 ; 음수 ; 0 ; 문자서식
;남;여
필드 조회 속성 설정
-대/소문자를 구분하지 않는다.
-마지막에 세미콜론(;)을 입력해서 SQL 문을 끝낸다.
SELECT 필드이름 FROM 테이블 이름;
SELECT 동아리.동아리코드, 동아리.동아리명 FROM 동아리;
SELECT 필드이름 FROM 테이블이름 WHERE 조건;
정렬
SELECT 필드이름 FROM 테이블이름 ORDER BY 필드 이름 ASC;
ASC는 오름차순, DESC는 내림차순
필드 이름 바꾸기
SELECT 현재필드이름 AS 바꿀필드이름 FROM 테이블이름;
예를들어
SELECT 주민등록번호 AS 주민번호 FROM 테이블이름;
그룹으로 묶어서 할때
SELECT 필드이름 FROM 테이블이름 GROUP BY 필드 이름;
그룹으로 묶은것에 조건까지 더할 경우
SELECT 필드이름 FROM 테이블이름 GROUP BY 필드 이름 HAVING 조건;
외부데이터 가져오기/내보내기/연결 테이블 만들기
폼 속성 지정
바운드 폼 : 테이블이나 쿼리의 레코드와 연결되어 있는 폼
: 데이터 표시 및 입력, 수정, 삭제 작업이 가능함
언바운드 폼 : 테이블이나 쿼리의 레코드와 연결되어 있지 않은 폼
: 사용자 편의를 위한 프로그램 초기 화면, 검색 및 확인 화면에 주로사용
80쪽
개수구하는 함수 : =count(*) 또는 =count(필드명)
전체 레코드 개수 예 ‘59건’처럼 해야될 경우 & 연산자 사용 : =count(*)&"건"
수익률(txt수익률) : 판매수량 필드 값이 20 이상인 경우 10%를 그 외의 경우 5%를 표시하도록 설정하시오(백분율 소수 1자리까지 표시)
엑셀 예를들어 판매수량필드가 B2셀이라고 가정하고 문제를 푼 것임.
IF(조건식, 참, 거짓)
=if(B2>=20,10%,5%)
엑세스 셀주소 대신 필드명을 사용함.
IIF(조건식, 참, 거짓)
=IIF([판매수량]>=20, 0.1, 0.05)
형식에서 ‘백분율’선택하고 소수점자릿수는 ‘1’로 선택
p.89 쪽 8번
TIP : 함수부분에서 문자를 나타낼 때 작은따옴표를 써야됨. 필드명과 테이블명들을 표시할 때 큰따옴표를 사용하게됨으로 문자를 표시할때는 작은따옴표를 써야됨.
엑셀
=DSUM(데이터전체범위, 계산할필드번호또는셀주소, 조건의범위)
`
엑세스
엑셀로 표시한다고 했을 경우 =DSUM(계산할필드번호또는셀주소,데이터전체범위,조건의범위)
엑세스로 변경하면=> =DSUM(“[계산할필드명]”,“테이블/쿼리명”,“[필드명]=[컨트롤명]”)
폼의 ‘txt지역코드’ 컨트롤을 이용하여 ‘판매현황’ 테이블에서 ‘매출액’ 합계와 평균
=DSUM(“[계산할필드명]”,“테이블또는쿼리명”,“앞쪽의테이블또는쿼리명에있는필드명=현재작업하고있는폼의조건컨트롤명”)
=DSUM(“[매출액]”,“판매현황”,“[지역코드]=[txt지역코드]”)
또는
=DSUM(“[매출액]”,“판매현황”,“[지역코드]=‘txt지역코드’”) 그런데 txt지역코드 부분은 내용이 매번 바뀌는 부분이기 때문에 컨트롤명 앞 뒤는 & 연산자로 끊어줘야됨.
=DSUM(“[매출액]”,“판매현황”,“[지역코드]=‘” & txt지역코드 & “’”)
예) =DSUM(“[매출액]”,“판매현황”,“[지역코드]=‘DG1’”)
=DSUM(“[매출액]”,“판매현황”,“[지역코드]=‘” & DG1 & “’”)
엑셀에서 문자표시할때는 큰따옴표 예 : “대구”
엑세스에서 문자표할때는 큰따옴표일때도 있고, 작은따옴표일때도 있음. 어디서 하느냐에따라 다름
함수에서는 작은따옴표를 사용한다고 생각하면 됨. 예 : ‘대구’
엑셀
D____(데이터전체범위, 계산할필드번호또는 셀주소, 조건의범위)
엑세스
D___(계산할필드명, 테이블명(엑셀로보면데이터전체범위), "성별='여'")
=DSUM([납부금],"수강고객현황","성별=txt성별")
조건부분
"성별=txt성별"은 "수강고객현황쿼리에있는 필드명=폼에있는 컨트롤명"
필드명=폼에있는 컨트롤명으로 쓸때는 ' [필드명]=[컨트롤명] ' 식으로 입력하거나 또는 컨트롤명안의 내용이 문자일 경우 "필드명='" & 컨트롤명 & "'" 처럼 입력하고
숫자일경우에는 [ "필드명=" & 컨트롤명 ] 처럼 입력하면된다.
예를들명
"직위='" & txt직위 & "'"
"나이=" & txt나이
"입사일=#" & txt입사일 & "#"
엑셀
DATEDIF(시작일, 종료일, 단위)
시작일부터 종료일까지의 경과한 날짜를 계산하는 함수
단위 : Y , M , D , YM , YD , MD
엑세스
DATEDIFF(단위, 시작일, 종료일)
엑세스 단위는 교재 104쪽 참조
엑셀
문자열 반복 REPT(반복할문자, 개수)
=Rept(“★”,5) 결과 : ★★★★★
엑세스
문자열 반복 STRING(개수, 반복할문자)
=String(5,“★”) 결과 : ★★★★★
엑세스
=replace(원본 텍스트, 찾을 텍스트, 바꿀 텍스트)
예 : =replace(“ABCDEFG”,“D”,“-”) 결과 : ABC-EFG
엑셀
=COUNTIFS(조건1의범위, 조건1, 조건2의범위, 조건2,,,,,)
엑세스
=SWITCH(첫번째조건, 첫 번째결과값, 두 번째조건, 두 번째결과값,,,,,,)
97쪽
정렬하기 전
SELECT 사원정보.직위
FROM 사원정보;
조건이 있는 경우
SELECT 사원정보.직위
FROM 사원정보
WHERE (((사원정보.직위)="사원"));
정렬한 후
SELECT 사원정보.직위
FROM 사원정보
ORDER BY 사원정보.직위 DESC;
오름차순은 생략가능 오름차순은 ASC 이고, 내림차순은 DESC
조건과 정렬이 있는 경우
SELECT 사원정보.직위
FROM 사원정보
WHERE (((사원정보.직위)="사원"))
ORDER BY 사원정보.직위 DESC;
중복된 내용 한번만 표시할 경우
DISTINCT 는 중복된 내용을 한번만 표시하도록 하라는 말임.
SELECT DISTINCT 사원정보.직위
FROM 사원정보
ORDER BY 사원정보.직위;
반복표시 별표를 한다음 뒤에 반복시킬 기호나 문자를 너비만큼 반복표시 *★
총 5페이지 중 현재 2페이지입니다.
="총 " & Pages & "페이지 중 현재 " & Page & "페이지입니다."
p. 114쪽 4단계
숫자 : “생년=” & txt생년
텍스트 : “학교=‘” & txt학교 & “’”
날짜 : “생년월일=#” & txt생년월일 & “#”
부분일치하는 것 찾을 때는 등호(=)대신 LIKE 가 사용됨.
“강자명 like ‘*txt강좌명*’” => 수정 : “강자명 like ‘*” & txt강좌명 & “*’”
Private Sub cmd제품명찾기_Click()
Me.Filter = "제품명='" & txt제품명 & "'"
Me.FilterOn = True
End Sub
설명 : 필드명=컨트롤명형태로 쓰고 수정 제품명='책상'
컨트롤명 앞과 뒤에는 공백이 한칸씩 있어야 됨.
Private Sub cmd전체보기1_Click()
Me.FilterOn = False
End Sub
설명 : 필터링 해제하라는 소리임.
부분일치하는 것 찾을 때 사용하는 것 : like
LIKE "김*" : 김으로 시작한 모든글자를 표시
LIKE "*김" : 김으로 끝나는 모든글자를 표시
LIKE "*김*" : 김이 포함된 모든글자를 표시
NOT LIKE "김*" : 김으로 시작한 모든글자를 제외
속성은 등호(=) 다음에 값을 정의하지만 메서드는 등호(=)없이 값을 정의함.
속성 : 개체의 특징을 말함. 크기, 색상, 화면의 위치 등
메서드 : 개체가 수행할 수 있는 행동을 말함. 문서를 열거나 닫기, 선택하기등
p117
Me.RecordsetClone.FindFirst “필드명=컨트롤명”
Me.Bookmark=Me.recordsetClone.Bookmark
부분일치하는걸 찾으라고 할 경우
Private Sub cmd찾기_Click()
Me.RecordsetClone.FindFirst "제품코드 like '*" & txt조회 & "*'"
Me.Bookmark = Me.RecordsetClone.Bookmark
End Sub
p. 119
부분일치하는 것 찾을 때 등호대신 like 사용
Private Sub cmd찾기_Click()
Me.RecordSource = "select * from 강좌 where 강좌명 like '*" & txt찾기 & "*'"
End Sub
엑셀의 프로시져부분에서 폼닫을 때 명령 : unload me
엑세스에서 폼닫을 때 명령 : DoCmd.Close
DoCmd 명령으로 현재 작업하고 있는 폼에서 다른 폼이나 보고서를 열으라고 할때는 현재 작업하고 있는 폼에서는 컨트롤명을 봐야하고, 열려야되는 폼이나 보고서에서는 필드명을 보면 됨.
엑세스 2일차.hwp