db 26

[삽잡이::sql] Table의 Index를 살펴보자! SHOW INDEX

DB에서 원하는 데이터를 추출하기 위해서Query문을 작성합니다. 이 때 대용량으로 데이터를 가져온다고 생각해봅시다.여러 테이블들을 join 하고 sub로 두고 웩~ 조금이나마 빠르게 Query문을 수행하기 위해서index의 중요성을 지난번에 언급한 적이 있었습니다. 이 테이블에서의 Index 정보를 확인하겠다! 할 때에는과감하게 SHOW INDEX 을 사용하십시요 index에 대한 정보가 잘 나옵니다. SHOW INDEX returns table index information. The format resembles that of the SQLStatistics call in ODBC. This statement requires some privilege for any column in the tabl..

[삽잡이::sql] Primary Key 그리고 Unique Key

오늘은 어떤 제목을 쓸까 하다가..... Primary Key 그리고 Unique Key라고 작성했습니다. 이와 비슷하게 '소호대' 의 사랑 그리고 추억이라는 노래가 있군요. (출처_ youtube)푸하하 그러면 신나게 한번 알아봅시다 DB안에 있는 테이블에는 컬럼과 값들로 가득(?)합니다. 이런식으로 데이터들이 저장되어있습니다. 여기서 Primary Key란, Key에 해당하는 컬럼을 의미합니다. 만능 열쇠 키~ 예 맞습니다. 그 유명한 만능 열쇠 키는테이블의 각 레코드를 구별할 수 있는 역할을 하고 있습니다. 세계적인 Foot Ball Club!Shovel FC가 있다고 해봅시다. 예 그렇습니다. shovel은 우리나라 말로 삽을 말하죠 하하하 아무튼....소속팀에 등번호가 중복되는 팀은 없을 것입니..

[삽잡이::sql] 여러 테이블을 가지고 놀자! JOIN

관계형 DB를 가지고 놀 때(?)하나의 테이블을 통해서 데이터를 가공하고 추출하는 경우도 있지만, 여러 테이블들과 Join하여 데이터를 가공하여 추출해야할 때가 있습니다. 데이터를 얻기 위해 하나의 테이블만으로는 부족할 수가 있기 때문입니다. 다들 아시는 영어 단어입니다.join~ 너와 나의 연결 고리 예 그렇습니다 JOIN 입니다~ 여러분~ 둘이 합쳐서 이쁜 데이터를 추출합니다~ SQL에서 JOIN은 '집합'으로 바라보시고 이해하시면 쉽습니다! 집합이라면, 교집합, 합집합 이런거겠구나!!! 우선 INNER JOIN에 대해서 알아봅시다. 여기... 삽질의 명성! 삽질과에 학부 명단이 있습니다. 이번에 삽질 평가를 했는데, 제대로 삽질을 하지 못한 F 학점을 받은 학생들을 추리려합니다. 아이고 '화석' 님..

[삽잡이::sql] 데이터베이스를 편하게 관리하고 다루자! SQLyog

MySQL과 같은 데이터베이스를 사용해보신 분들은 CMD 창을 사용해보셨을 것입니다. 그런데, 아주 이쁘게! DB를 관리하고 조작하는 등등을 도와주는 프로그램 친구를 소개해드리려고 합니다. 안녕 난 SQLyog라는 프로그램이야. 돌고래같이 생겼지우와 돌고래 아니니? 아니야 ^^;; 나를 잘 알고 싶으면 공식 사이트(https://www.webyog.com/)를 확인해볼래? 난 MySQL 서버의 데이터들을 관리하고 모니터링 할 수 있는 Tool이야! 너 참 좋은 녀석이구나!? 설치를 하게 되면 이와 같은 화면이 반겨줄 것입니다. DB 안의 Data를 사용하기 위해서는 DB 저장소가 어디있는지 명시해줘야겠지요.또한, 관리하기 위해 사용자 이름과 비밀번호 등이 필요할 것입니다. 이런식으로 Query문을 작성하..

#095_닷넷(.NET)_ ADO.NET - 비연결 계층 LINQ

안녕하세요 삽잡이입니다. 몇일 전부터 ADO.NET에 대해서 알아보고 있습니다.이번 시간에는 ADO.NET의 마지막으로써비 연결 계층에서 LINQ를 사용하는 기능에 대해서 알아보려고 합니다. LINQ 문법은 쿼리 문법으로써SQL과 마찬가지로 많은 데이터를 대상으로 때립니다. 이전에는 객체들인 objects 형식에 때렸던 것이었습니다.그런데 ADO.NET에서 보셨으면 아시겠지만,DataSet을 대상으로도 LINQ가 가능하다는 놀라운 사실을 알 수 있습니다. 지금까지 데이터를 조작하는 방법은 총 세가지였습니다.1. Tables, Rows, Colums 컬렉션을 사용.2. DataReader 객체를 사용.3. 강력한 타입의 데이터 클래스를 사용. 그리고 이번에 알아볼 LINQ까지 합치면 이제는 총 네가지이군요..

#094_닷넷(.NET)_ ADO.NET - 비연결 계층 자동화

안녕하세요 삽잡이입니다. 이번 시간에는 자동으로 사용하는 비연결 계층에 대해서 알아보겠습니다. 사실, 지난 시간까지 DataTable을 만들고... Adapter를 추가하고... DataColumn을 추가하고... 등등...DB 한번 쓰기 참 힘들었죠... 그런데, MS에서는 이 비연결 계층 방식으로 DB를 사용할 때에자동으로 '강력한 타입'의 DB 코드를 제공해줍니다. [서버 탐색기] > [데이터 연결]을 통해 사용하고자 하는 DB를 연결하고,데이터 집합이라는 파일을 만듭니다. 'xsd' 확장자의 데이터 집합 파일을 만들게 되면,이제 비연결 계층의 기능을 자동으로 제공해주게 됩니다. [서버 탐색기]로 부터 열어놓은 Table들을 드래그를 통해서 쉽게 만들 수 있게 되지요. 굉장히 편리하지 않습니까? T..

[삽잡이::C#] ADO.NET_View

ADO.NET 에서 View는실제 원본을 보여주고 싶은것이 아니라,보여주고 싶은 데이터들만 보여주고 싶을 때가상의 테이블을 하나 만들어 주는 기능을 제공해줍니다. 즉, 보여주고 싶은 필드만을 지정해주고,View를 통해 해당 필드만을 보여줄 수 있다 이것이지요. 해당 코드는 테이블의 참조를 받아와서 DefirtView 를 사용해서 바인딩하는 과정입니다.

#093_닷넷(.NET)_ ADO.NET - 비연결 계층 코드

안녕하세요 삽잡이입니다. 지난 시간에는 ADO.NET에서 제공하는 비연결 계층에 대해서 알아봤습니다.개념을 중점적으로 알아봤었지요. 이제부터는 실제 코드를 보며, 어떻게 비연결 계층을 다루는지에 대해서 알아보겠습니다. 데이터 컬럼을 만드는 방법은 이와 같습니다. Primary Key는 오직 읽기만 가능하고, 누구나 가지고 있으며, Uniqe해야합니다.따라서, 이와 같이 상태에 대한 설정을 해주고 Primary Key로 Column을 지정해줄 수 있습니다. 또한, Column들을 따로 따로 만들 필요 없이AddRange()를 통해 여러개의 Column들을 한꺼번에 만들 수 있습니다. 물론, DB에서 자동적으로 만들어주지만,공부를 위해 수동적으로 만드는 방법에 대해서 알아보는 것입니다. DataRow는 각각..

#092_닷넷(.NET)_ ADO.NET - 비연결 계층 개념

안녕하세요 삽잡이입니다. 이번 시간 부터는 '비 연결 계층'에 대해서 알아보려고합니다. 연결 계층에서는 DB와 연결해좋지 않은 상태에서는DB 프로그램을 할 수 없었습니다.즉, DB에 대해서 가져오거나 수정등을 할 때에는 직접 테이블에 있는 내용에 명령을 내렸었다 이겁니다.모든 것을 다 데이터 원본을 대상으로 동작했었죠. 비 연결계층은 DB와 연결해놓지 않은 상태에서 DB 프로그램을 하는 것을 말합니다. 개념적으로 표현해보겠습니다. 비 연결 계층은쉽게 말하면, 원본 DB Source를 APP에 복사본을 뜨는 것입니다.즉, DB를 DB 그대로의 메모리상에 DB로 옮긴다는 것이죠.따라서, DB 프로그램을 할 때에는 DB 원본과 이야기를 하는 것이 아닙니다.왜냐? 메모리상에 DB와 이야기할 것이기 때문이지요. ..

#091_닷넷(.NET)_ ADO.NET - DB 모델링

안녕하세요 삽잡이입니다. 이번 시간은 DataBase 설계즉, 데이터 베이스 모델링에 대해서 알아보려고합니다. DB 모델링은DB가 규칙성있는 구조를 갖는 데이터 집합을 말합니다.즉, 데이터 모델링이라는 것은 말 그대로 데이터를 모델화 하는 것이지요. 기존에 객체 지향개념에 입각하여해결하고자하는 문제에 대해서 추상화를 사용합니다. DB 모델을 만드는것 또한 추상화를 하는 것입니다. DB 용어에서는 일반적으로, DB 테이블들을 Entity라고 부를 수 있습니다.즉, 어떤 표현하고자하는 문제 내에서 모델을 가지고 와서DB에 표현하면 하나의 Entity가 되는 것이지요. 우리는 사용자가 원하는 문제에 대해서 데이터 베이스로 표현할 수 있습니다. 그런데, 사용자의 요구사항을 DB 테이블로 표현하고자할 때하나의 테..