본문 바로가기

전체 글37

데이터 활용해보기 - 트리거 오늘은 트리거에 대하여 알아봅니다~ 책에서는 다음과 같이 설명하고 있습니다. "트리거(Trigger)란 테이블에 부착되어 테이블에 INSERT나 UPDATE 또는 DELETE 작업이 발생되면 실행되는 코드를 말한다" 이번에는 위키백과를 살펴봅니다. "데이터베이스 트리거(Database Trigger)는 테이블에 대한 이벤트에 반응해 자동으로 실행되는 작업을 의미한다. 트리거는 데이터 조작 언어(DML)의 데이터 상태의 관리를 자동화하는데 사용된다. 트리거를 사용하여 데이터 작업 제한, 작업 기록, 변경 작업 감사 등을 할 수 있다." https://ko.wikipedia.org/wiki/데이터베이스_트리거 이제 대략 감이 오기 시작합니다. 저는 트리거 하면 이게 생각납니다. trigger - 방아쇠 대략.. 2020. 9. 26.
데이터 활용해보기 - 스토어드 프로시저 - 너 함수구나!! 오늘은 스토어드 프로시저에 대하여 살펴봅니다. Stored Procedure 네이버 IT용어사전을 찾아보면 축적 절차라고 되어 있습니다. 클라이언트/서버형 데이터베이스 시스템의 고속화 기법의 하나, 클라이언트가 서버의 데이터베이스에 요구하는 명령중에서 자주 사용하는 일련의 명령 집합을 사전에 컴파일하여 바로 실행 가능한 상태의 모듈로 데이터베이스 관리 시스템에 수용하는 것을 말한다고 합니다. https://terms.naver.com/entry.nhn?docId=857809&cid=42346&categoryId=42346 SQL문을 하나로 묶어서 편리하게 사용하는 기능, 즉 미리 만들어 놓은 후 스토어드 프로시저를 호출하는 방식이라고 보면 됩니다. 실습을 통해 살펴봅니다. select * from mem.. 2020. 9. 23.
데이터 활용해보기 오늘은 지난시간에 만든 데이터베이스를 이용하여 데이터를 조회하는 등의 아주 간단한 실습을 합니다. 실습을 마치고나니.. 저자는 여기까지 해볼만하지 않냐고 하면서.. 이정도 하면 물에 빠져 죽지는 않을 수영방법을 배운거라고 합니다. ㅋㅋㅋ 암튼... 저도 여기까지 해보니..오 디비 할만한데~ 요런 생각이 들었습니다. ㅎㅎㅎㅎ 자 그럼 시작할까요? 데이터 활용해보기 "Create a new SQL tab for executing queries" 를 클릭합니다. 즉 쿼리를 실행하는 아이콘을 클릭합니다. shopdb 를 더블클릭하여 진하게 변경되도록 합니다. 즉 여기에 쿼리를 실행하겠다는 것이죠. 다음과 같은 쿼리문을 실행합니다. 해당 테이블을 모두 보겠다는 것이지요~ 자, 쿼리를 작성했으니 실행합니다. 앞으로.. 2020. 9. 20.
MySQL을 이용한 데이터베이스 생성 책에서 간단하게 데이터베이스 구축 절차를 안내하고 있습니다. 구글링을 하니 책에 삽입된 그림을 찾을수가 있네요. 참고하시면 될 듯 합니다. 그럼 저도 이 순서대로 데이터베이스를 구축해보렵니다. 1. 데이터베이스 생성 Workbench를 실행합니다. "Local instance MySQL80" 을 클릭합니다. 비밀번호를 입력하고 서버에 접속합니다. SCHEMAS 에서 "Create Schema.."를 클릭합니다. 스키마는 데이터베이스라고 간단하게 생각해도 됩니다. 아래에서 좀 더 개념을 살펴보아도 되구요. 스키마가 기억속에 저장된 지식을 말하는 것처럼 비슷한 개념이라고 보면 됩니다. https://terms.naver.com/entry.nhn?docId=836327&cid=42344&categoryId=4.. 2020. 9. 20.
데이터베이스 모델링과 필수 용어 살펴보기 지난 시간까지 해서 MySQL을 설치했고, 샘플 데이터베이스도 준비했으니 오늘부터 드디어 본격적인 실습을 들어가나.. 했는데 띠루룽~ 데이터베이스 용어가 나옵니다. 지루하겠지만.. 용어, 개념은 무진장 중요하니 진득하게 살펴봅니다. 한 십분의 1정도 책을 본것 같습니다. 공부하기 싫어하는 저는.. 책에 표시합니다.. 얼마 남았나 ㅋㅋㅋ 정보시스템을 구축하기위해서는 보통 다음의 프로세스를 따릅니다. 분석, 설계, 구현, 유지보수의 단계를 거칩니다. 가장 중요한 과정이 분석과 설계의 과정입니다. 프로그래밍 세계에서도 이 과정은 전체 공정의 절반 이상을 차지합니다. 구현과 유지보수를 그것을 그냥.. 구현하는 거죠. 말 그대로.. 디자인도 똑같습니다. 흔히들 말하는 기획, 분석과 설계가 가장 중요합니다. 모든 .. 2020. 9. 19.
샘플 데이터베이스 설치하기 퍼블리싱할 때도 임의의 텍스트를 처리하기 위해 로렘입숨을 활용합니다. 구글링하면 한글 로렘입숨이 많습니다. http://hangul.thefron.me/ 데이터베이스 실습을 할 때에도 마찬가지로 대량의 데이터는 샘플 데이터베이스를 활용하나 봅니다. "employees"라는 샘플 데이터베이스를 활용해 보겠습니다. 요기 가시면 "employees" 샘플 데이터베이스에 대한 정보를 살펴볼 수 있습니다. https://dev.mysql.com/doc/employee/en/ 요 사이트에서 배포하는 employee 를 다운받아도 되나, 저자가 잘 작동되도록 수정한 파일을 재배포한다고 하니 책 저자의 카페에 가서 샘플 데이터베이스를 다운받도록 합니다. https://launchpad.net/test-db 여기가 저자.. 2020. 9. 18.
MySQL접속 & 환경 설정 & Path 경로 추가하기 그동안은 감만 잡았다면.. 이제부터 실습이 되겠네요~ 어제 설치한 MySQL을 접속합니다. MySQL을 실행하고, 초기화면에서 다음의 [Local instance MySQL80]을 클릭합니다. 컴퓨터에 설치한 MySQL Server에 접속하는 것입니다. 오 신기 신기~ 비밀번호를 입력하고 접속합니다~ 쨔잔~ 이것이 MySQL Workbench입니다. 여기서 모든 작업을 다 한다고 합니다. 오른쪽 상단의 아이콘을 누르면 화면을 넓게 쓸수 있습니다. 당장은 SQL Additions을 쓰지 않는다고 하니.. 닫아둡니다. MySQL Workbench의 몇가지 환경설정을 하기 해봅니다.(책 따라하는중..) Safe Updates 를 해제하라고 합니다. Primary Key 설정을 일단 신경쓰지 않기 위해서인듯 합.. 2020. 9. 17.
MySQL 설치하기 - 결국은 설치하는구나~ 결국은 설치 들어갑니다. 저자는 마우스만 클릭할줄 알면 설치할수 있다고 하네요. ㅋㅋㅋ 설치하기전 핵심 용어 정리입니다~ Windows 운영체제에서는 64bit Windows 10 이상, Windows Server 2012 R2 이상의 버전을 요구하고 있습니다. MySQL Community 8.0은 Windows 10에 설치 MySQL Server 와 MySQL Client MySQL Community 8.0.17 설치 MySQL 서버에 접속하기 위해 MySQL Workbench 사용 MySQL 은 전통적으로 employees라는 샘플 데이터베이스 제공함 MySQL 제거는 제어판 사용 실무에서는 Linux 환경에서 MySQL 많이 사용 책에서는 MySQL Community 8.0.17 설치 하는데.. 링.. 2020. 9. 16.
MySQL이란? MySQL은 데이터베이스 관리 소프트웨어로 Oracle에서 관리 및 지원하고 있습니다. Oracle 은 미국 캘리포니아주에 본사를 둔 세계 2위 소프트웨어 회사라네요(위키백과). 이 회사의 DBMS는 세계 최고의 점유율을 차지하고 있다고 합니다. 오라클.. 갑자기 매트릭스가 생각납니다. ㅋㅋㅋ 암튼.. MySQL은 오픈소스로 제공됩니다. 오픈소스로 제공된 소프트웨어는 누구나 무료로 다운로드해서 사용할 수 있으며, 소스를 제공하기에 고쳐서 더 발전시킬 수 있습니다. 배짱이 대단들합니다. MySQL은 비상업용이나 교육용은 제한없이 사용해도 되지만, 상업용으로 사용하기 위해서는 상용 라이선스를 취득해야 한다고 하네요. SQL이 1070년대에 IBM 회사에서 만들었다고 하더라구요. 저랑 연배가 비슷하다는.. 하.. 2020. 9. 16.
SQL 개요 오늘은 SQL 기본 개념입니다.~ 겁~나게 피곤하지만 살짝 달려봅니다. ^^ 위키백과에서 SQL의 개념적 정의를 살펴봅니다. SQL이란? "SQL(Structured Query Language, 구조화 질의어)는 관계형 데이터베이스 관리 시스템(RDBMS)의 데이터를 관리하기 위해 설계된 특수 목적의 프로그래밍 언어이다. 관계형 데이터베이스 관리 시스템에서 자료의 검색과 관리, 데이터베이스 스키마 생성과 수정, 데이터베이스 객체 접근 조정 관리를 위해 고안되었다. 많은 수의 데이터베이스 관련 프로그램들이 SQL을 표준으로 채택하고 있다." 한 십오년전에 플래시로 게시판 만들때 살짝 다뤄본 기억이 납니다. SQL은 디비에 테이블을 생성하고 어쩌구 저쩌구 했었지요. 요 문장들이 실습을 해보면 매우 당연하게 .. 2020. 9. 16.
DBMS 개요 - DBMS 분류 DBMS의 유형에는 계층형, 망형, 관계형, 객체지향형, 객체관계형 등이 있습니다. 현재 DBMS 는 관계형 DBMS가 가장 많이 사용되고 있습니다. * 계층형 DBMS 트리 형태를 가진 1:N의 관계를 갖는 구조를 말합니다. 처음 구축한 이후 구조를 변경하기가 까다롭다고 하네요. 검색은 빠르지만 접근의 유연성이 부족이 임의 검색에는 어려움이 따른다고 합니다. 홈페이지도 이와 비슷한데, 이를 극복하기 위해 홈페이지의 경우 다양한 방법으로 보완하는 것이 생각나네요. * 망형 DBMS 계층형 DBMS를 보완하기 위해 나왔으며, 1:1, 1:N, N:M(다대다) 관계가 지원되어 효과적이고 빠른 데이터 추출이 가능하지만, 매우 복잡함으로 이 모든 구조를 이해하고 프로그램해야한다는 담점이 있습니다. * 관계형 D.. 2020. 9. 13.
DBMS 개요 - 데이터베이스의 발전 무엇이든 역사가 있기 마련이죠. 발전과정... 그것은 필요에 의해 현재를 변화시키는 것.. 저도.. 서버가 필요하지 않았기에.. 그쪽은 공부하지 않았는데... 이제 필요하게 되었어요. 그래서.. 현재를 바꾸게 된거죠.. * 오프라인으로 관리 데이터베이스 이전에는.. 우리는 종이로 데이터를 관리했었습니다. 그렇죠.. ㅎㅎ 개인의 가계부 뿐아니라.. 회사의 큰 규모도 장부로 관리하던 시절이 있었죠.. 학창 시절.. 이런 장부를 본 기억이 납니다. 지금은.. 모두 컴퓨터가 대체했지요. * 파일 시스템의 사용 컴퓨터가 등장하면서 종이에 기록하던것을 전산화 작업해서 관리하게 됩니다. 편리하죠. 그런데 문제점은.. 파일 시스템은 각각의 파일이 존재하다보니... 데이터가 수정되면 각각의 파일을 모두 수정해야 하는 번.. 2020. 9. 13.
DB 연동을 위한 확장 - MySQL이라는 것을 추가하다, DBMS 개요 공부할 내용에 새로운 책이 하나 추가되었습니다. 어차피 해야 하는 디비연동이라... 저의 경우 주로 닷홈에서 호스팅을 합니다. 닷홈의 경우 호스팅을 시작하게 되면 기본적으로 phpMyAdmin을 바로 활용할 수 있습니다. 노드는 자바스크립트와의 확장때문에 공부할 필요성을 느꼈고, php는 조금 다루어보았기에... MySQL도 공부하기로 했습니다. 역시나 책으로 시작하는 저는 몇번 검색끝에.. 요 책을 주문해서 오늘 받았습니다. 역시나 서문을 읽기 시작합니다. 이 책은 MySQL, 데이터베이스를 처음 접하는 사용자를 대상으로 쓰여진 책입니다. PHP와 파이썬을 다뤄준다고도 하네요. 전 딱 디비 연동만 알면 되는데... 마음을 급하게 먹지 말고 100일 꾸준히 마늘 먹자는 다짐으로 시작합니다. 저다 우재남님.. 2020. 9. 13.
이벤트 기반 & 논 블로킹 I/O - 자바스크립트는 이벤트 기반이구나! 이벤트 기반 이벤트 기반이란 이벤트가 발생할 때 미리 지정해둔 작업을 수행하는 방식을 말한다고 합니다. 제가 여지껏 사용해왔던 자바스크립트가 대표적일듯 합니다. 이벤트 기반 프로그래밍은 특정 이벤트가 발생할 때 미리 등록해둔 어떤 일을 하도록 해줍니다. 자바스크립에서 이벤트 리스너에 콜백함수를 등록하는 것이 바로 이벤트 기반이라고 볼 수 있습니다. 위키백과에서 이벤트를 찾아보면 다음과 같이 이야기 하고 있습니다. https://ko.wikipedia.org/wiki/이벤트_(컴퓨팅 노드도 이벤트 기반 방식으로 동작한다고 합니다. 즉, 노드도 이벤트 리스너에 콜백함수를 등록해두고 사용하는 것입니다. 노드는 자바스크립트의 코드를 맨 위부터 한 줄씩 실행합니다. 새로운 공부는 용어와 개념의 정립이 중요합니다... 2020. 9. 13.
V8 엔진 - V8 엔진아~ 고마워~ 자바스크립트는 클라이언트 스크립트였는데.. 이 놈이 서버단까지 아우를수 있게 해준것은 V8 엔진 덕분입니다. V8 엔진(Chrome V8) 크롬 V8 또는 간단히 V8이라고 불리웁니다. 웹 브라우저를 만드는 데 기반을 제공하는 오픈 소스 자바스크립트 엔진으로 구글이 제공하고 있는 강력한 오픈소스입니다. 구글이 크롬 웹 브라우저를 개발하면서 함께 개발한 것이 V8 자바스크립트 엔진이라고 합니다. V8 자바스크립트 엔진은 기존 다른 웹 브라우저보다 자바스크립트 처리가 월등히 빠릅니다. 기존의 브라우저는 자바스크립트를 인터프리트하여 처리하지만 V8은 JIT(Just In Time) 컴파일 방식을 사용하여 성능이 빠르다고 합니다. JIT 컴파일 방식은 자바스크립트를 인터프리트하지 않고 즉시 기계어로 컴파일한다고.. 2020. 9. 13.
서문을 정독하다. - 역시 책은 서문이지! 드디어 책이 왔습니다. 책이 표지도 이쁘네요. 마지막장 페이지 넘버를 보니 756입니다. 매우 두껍네요. 100일동안 이책 열심히 보면서 앱을 만드는 것이 목표입니다. ^^ 저자는 문과생인데.. 자바스크립트를 통해 개발자로 입문했다고 하네요. 저는 미대생인데.. 자바스크립트 통해 개발자 세상을 기웃거리는 중입니다. 하하하... 전 책으로 공부하는 스타일입니다. 책 + 숱한 구글링이지요. 책을 볼때는 표지부터 꼼꼼하게 ㅎㅎㅎ 다 보는 스타일입니다. 저자 서문은 특히 꼼꼼히 읽지요. 저자를 통해 알게된 스택 오버플로우 사이트입니다. 일단 노랑노랑하니 이쁘네요 ㅎㅎ 저도 여기를 들락거릴수 있기를 기대합니다. https://stackoverflow.com/ 저자도 기본 개념의 중요성을 강조합니다. 완전 동감입니.. 2020. 9. 13.
Node.js 테스트하기 - 헉! 명령프롬프트 너 뭐하는 아이냐? 오늘도 구글 서치를 하면서 Node.js를 탐색중입니다. 책이 아직 안 온관계로.. 구글링을 하면서.. 정보의 조각들을 끼워맞춰보는 중입니다. 따라하면서 에러 팍팍 나다보니.. 역시 책으로 먼저 기본기를 쌓아야겠다는 결론입니다. 사람마다 공부하는 방식은 다양한데.. 저의 경우.. 구글링 + 책으로 공부를 시작합니다. 처음하는 분야는 꼭 책을 적어도 3개 이상 봅니다. 그래야 맥이 잡히고 체계가 생기고, 나만의 방식으로 응용도 할 수 있더라구요. 아직 책이 안온관계로... 가볍게 구글링을 하면서 눈팅을 하다가.. 실습아닌 아주 간단한 실습을 합니다. 명령 프롬프트에서 Node.js가 잘 설치되었는지 확인도 해봅니다. 아직 npm이란 녀석은 잘 모르지만 그녀석도 잘 설치가 되었더군요. 명령프롬프트에서도 변수.. 2020. 9. 13.
Node.js 설치하기 - 뭐든지 시작이 중요합니다. Node.js 설치하기 https://nodejs.org/ko/ 안정적인 버전을 설치해봅니다. 압축을 풀어야겠지요~ 일단 기본으로 설치합니다. 뭐 안되면 다시 하면 됩니다^^ 잘 설치되었는지 Node.js 를 실행해봅니다. 아직.. 이걸로 뭘 할 수 있는지는 모르겠지만.. 시간이 지나면 잘 하겠지요~ Node.js는 웹서버의 기능을 내장하고 있다고 합니다. 이제 웹서버의 기능을 구현해보려고 합니다. 아싸~ Node.js는 웹서버의 기능을 내장하고 있다는 의미가 무엇일까요? 하나씩 알아가보려고 합니다. Node는 웹 서버가 아니고, HTTP 서버를 직접 작성해야 한다고 합니다. 아... 모르는것이 나오기 시작합니다. ㅎㅎㅎ 일단.. Node.js로 만들면 좋은 것들을 정리해봅니다. * 입출력이 잦은 어플리.. 2020. 9. 13.
728x90
반응형