[SQL][관리] MySQL 에서 SQL 문 사용하기 …

=======================================================

MySQL 에서 SQL 문 사용하기 …

=======================================================

지금까지 다루어온 내용을 기본으로 하여 나만의 데이터 베이스를 만들어

보도록 하겠다.

먼저 앞으로 사용할 DB 를 생성한다.

mysql> create database test1;

Query OK, 1 row affected (0.00 sec)

(test1 이란 DB 를 생성하였다. )

이와 같이 DB 를 생성하였으면 사용하기 전에 이 DB 에 대한 사용권한을

정해 주어야 한다. 즉 어떤 사용자가 어떠한 권한을 이 DB 에서 행할수

있는지를 정해 주어야 한다.

mysql> grant all on test1.* to alang;

Query OK, 0 rows affected (0.01 sec)

test1 이란 DB 의 모든 사용권한을 alang 이란 사용자에게 준다는 뜻이다.

데이터베이스를 생성하면 앞에서 배운바와 같이 /usr/local/mysql/var

에 새로 생성한 DB 명과 같은 디렉토리가 생길것이다. 확인한후 정상적

으로 생성이 되어져 있으면 이제 DB 내에 데이타를 입력할 준비가 완료

되어진것이다.

먼저 DB 에 데이터를 입력하기 전에 꼭 짚고 넘어가야할 사항이 있다.

데이터베이스에서 데이터를 입력하는데는 열과 행의 형식막?데이터가

입력되어진다. 열을 ‘필드’라고 하고 행을 ‘레코드’라고 부른다.

NO      NAME        EMAIL               SEX

1       서진우      alang at kobis.net     m

2       박창현      macs911 at kobis.net   m

3       신상철      scsinn at kobis.net    m

4       김승진      jinee at kobis.net     m

5       김수경      invoice at kobis.net   w

이와 같은 데이터를 입력할려고 한다.

NO,1,2,3,4,5 와 같은 열을 필드라고 한다.

1,서진우,alang at kobis.net,m 와 같은 행을 레코드라고 한다.

레코드가 많아 질수록 데이터의 중복이 발생할 우려가 생긴다.

만일 레코드중 고유 식별 데이터가 없다면 검색시 정확한 검색을 할수가

없다. 그렇기 때문에 데이터베이스를 처음에 설계할때 반드시 고유식별

을 해줄수 있는 필드를 만들어 놓아야 한다. 이를 데이터 베이스에서는

Key(Primary Key) 라고 한다. Key 와 같은 필드엔 반드시 데이터가 들어

있어야 한다. 반대로 필드중 정보를 공개할수 없거나 비워두어도 되는

특성을 가진 필드엔 NULL 값을 가지게 된다. 이제 이론은 그만하고 진짜

로 테이블을 생성해 보도록 한다.

테이블생성은 아주 쉽다. 각 필드에 들어가는 데이터의 자료형과 함께

create table 문을 적어주면 된다.

테이블 생성 형식 :

————————————-

create table 테이블명 (

필드이름1 (Data형) NOT NULL

필드이름2 (Data형)

..

.

PRIMARY KEY (필드이름);

————————————-

NOT NULL 은 반드시 존재해야할 데이터의 경우에 지정한다.

즉 PRIMARY KEY로 사용될 필드에 대해서는 Date type 가 반드시 NOT NULL

이 되어야 겠다.

진짜로 만들어 보자.

mysql> create table member (

    -> NO INT NOT NULL,

    -> NAME VARCHAR(30),

    -> EMAIL VARCHAR(50),

    -> SEX VARCHAR(2),

    -> PRIMARY KEY (NO));

Query OK, 0 rows affected (0.00 sec)

에러 없이 처리가 무사히 되었다면 show table 과 desc 를 이용하여 테이

블이 정상적으로 생성이 되었는지를 확인하자.

mysql> show tables;

+—————–+

| Tables_in_test1 |

+—————–+

| member          |

+—————–+

1 row in set (0.00 sec)

mysql> desc member;

+——-+————-+——+—–+———+——-+

| Field | Type        | Null | Key | Default | Extra |

+——-+————-+——+—–+———+——-+

| NO    | int(11)     |      | PRI | 0       |       |

| NAME  | varchar(30) | YES  |     | NULL    |       |

| EMAIL | varchar(50) | YES  |     | NULL    |       |

| SEX   | varchar(2)  | YES  |     | NULL    |       |

+——-+————-+——+—–+———+——-+

4 rows in set (0.00 sec)

훌륭하게 생성이 되었다.

너무 쉽게 했다고 생각 되어지면..지워버리도록 하자..^^;;

mysql> drop table member;

Query OK, 0 rows affected (0.00 sec)

mysql> show tables;

Empty set (0.00 sec)

아주 깨끗하게 지워졌다.

하지만 앞으로의 데이터 입력구문을 배우기 위해서는 테이블이 꼭 필요하다.

다시 입력하도록 한다. (복습…복습..복습…^^;;;)

다시 입력하기 전에 알아 두고 넘어가자.

데이터 형으로 너무나 많은 종류가 있는데 처음에는 대표적인 몇가지만 알

아두고 나중에 자세히 다루기로 하자.

INT         : 4byte 정수

CHAR (M)    : M개의 문자

VARCHAR (M) : 최대 M개를 넘지 않는 문자

TEXT        : 최대 65535 개의 문자

그럼 다음엔  데이터 입력에 대해 살펴보도록 하겠다.

서진우

슈퍼컴퓨팅 전문 기업 클루닉스/ 상무(기술이사)/ 정보시스템감리사/ 시스존 블로그 운영자

You may also like...

3 Responses

  1. 2024년 10월 27일

    … [Trackback]

    […] Read More on that Topic: nblog.syszone.co.kr/archives/524 […]

  2. 2024년 10월 27일

    … [Trackback]

    […] Information to that Topic: nblog.syszone.co.kr/archives/524 […]

  3. 2024년 10월 27일

    … [Trackback]

    […] Read More on that Topic: nblog.syszone.co.kr/archives/524 […]

페이스북/트위트/구글 계정으로 댓글 가능합니다.