반응형

반응형

MySQL 컬럼 초기값 설정하기.

 

처음부터 데이터가 입력되어 있는 컬럼을 설정하는 방법은 컬럼에 default 키워드를 설정하면서 테이블을 생성합니다.

create table 테이블명 (컬럼명 자료형 default 초깃값, …);

 

기존 테이블에 디폴트 값 설정은 다음과 같은 명령어를 사용합니다.

Alter table 테이블명 modify 컬럼명 자료형 default 초깃값;

 

기존 생성된 table_03 테이블의 속성을 변경해 보겠습니다.

desc table_03;

alter table_03 table_03 modify name varchar(10) default ‘이름 없음’;

desc table_03;

 

이제 이름을 입력하지 않고 데이터를 입력해 보겠습니다.

select * from table_03;

insert into table_03 (number, age) value (‘A7’, 44);

select * from table_03;

반응형

'MySQL' 카테고리의 다른 글

MySQL 테이블과 레코드 복사하기.  (0) 2017.10.22
MySQL 색인 설정하기.  (0) 2017.10.18
MySQL 기본 키 설정하기.  (0) 2017.10.08
MySQL 테이블 수정하기.  (0) 2017.09.30
MySQL 프롬프트명 변경하기.  (0) 2017.09.25
Posted by 컴스터
,
반응형

MySQL 기본 키 설정하기.

 

기본키란? 유일한 레코드를 만들려면 다른 컬럼과 구별하고자 특별한 속성을 설정해야 합니다.

이럴 때 사용하는 것이 기본 키입니다. 기본 키는 수많은 레코드 중 하나를 특정하기 위해 사용하는 식별자입니다.

기본 키는 다음과 같은 특징을 갖는 컬럼입니다.

값이 중복되지 않는다.

반드시 데이터를 입력해야 한다(NULL을 입력할 수 없다.)

다음은 테이블을 만들 때 기본 키를 설정하는 명령입니다.

create table 테이블명 (컬럼명 자료형 primary key…);

 

다음과 같이 실습해 보겠습니다.

create table table_06 (no int primary key, name varchar(10));

desc table_06;

 

 

Table_06에 실제 값을 입력해 보겠습니다.

Insert into table_06 values (1, ‘싸이’);

Select * from table_06;

 

 

기본 키로 설정한 컬럼(no)에는 insertupdate 명령으로 이미 존재하는 값을 입력할 수 없습니다.

그렇기 때문에, 기본 키로 설정하면 유일한 레코드를 만들 수 있습니다.

 

고유 키 설정하기.

 

중복되지 않는다라고 제한할 수 있는 고유 키(또는 유니크 키, unique key)를 설정할 수 있습니다.

다음 명령을 실행하면 고유 키인 int형의 컬럼 novarchar(10)형의 컬럼 name로 구성된 테이블 table_07이 생성됩니다.

고유 키라면 컬럼 안에서 중복은 허용되지 않지만 null은 입력할 수 있습니다.

 

Create table table_07 (no int unique, name varchar(10));

Desc table_07;

 

 

 

연속 번호 기능이 있는 컬럼 정의하기.

연속 번호 기능이 있는 컬럼을 만들려면 다음과 같은 설정이 필요합니다.

1.     자료형은 int 등의 정수형.

2.     Auto_increment 선언.

3.     Primary key 등으로 설정해서 유일하게 만들기.

실습을 해보겠습니다.

Create table table_08 (no int auto_increment primary key, name varchar(10));

Desc table_08;

 

연속 번호가 잘 들어 가는 지 확인해 보겠습니다.

Insert into table_08 (name) values(“싸이”);

Insert into table_08 (name) values(“유재석”);

Insert into table_08 (name) values(“강호동”);

Select * from table_08;

 

반응형

'MySQL' 카테고리의 다른 글

MySQL 색인 설정하기.  (0) 2017.10.18
MySQL 컬럼 초기값 설정하기.  (1) 2017.10.17
MySQL 테이블 수정하기.  (0) 2017.09.30
MySQL 프롬프트명 변경하기.  (0) 2017.09.25
MySQL 자료형.  (0) 2017.09.24
Posted by 컴스터
,
반응형

MySQL 테이블 수정하기.

 

ALTER TABLE 명령어.

컬럼 구조를 수정할 때에는 alter table 명령을 사용합니다.

l  컬럼의 정의를 수정할 때 : alter table ~ modify ~

l  컬럼을 추가할 때 : alter table ~ add ~

l  컬럼의 이름과 정의를 수정할 때 : alter table ~ change ~

l  컬럼을 삭제할 때 : alter table ~ drop ~

 

 

MySQL 컬럼의 자료형 수정하기.

컬럼의 자료형을 수정할 때는 서로 대응할 수 있는 자료형으로 수정해야 합니다.

큰 자료형에서 작은 자료형으로 수정하면 오류가 발생하거나 무의미한 값이 됩니다.

컬럼의 자료형을 수정할 때는 다음 명령어를 사용합니다.

Alter table 테이블명 modify 컬럼명 자료형;

 

Table_04 에 있는 varchar(10) name 컬럼을 varchar(100)으로 수정하겠습니다.

우선 컬럼 구조를 확인후 수정하겠습니다.

desc table_04;

alter table table_04 modify name varchar(100);

desc table_04;

 

컬럼 추가하기.

현재 테이블 table_03에는 number, name, age 컬럼이 정의되어 있습니다.

여기에 생년월일을 입력할 수 있는 datetime형의 컬럼 birthday를 추가해 보겠습니다.

컬럼 추가 명령은 다음과 같습니다.

Alter table 테이블명 add 컬럼명 자료형;

 

desc table_03;

alter table table_03 add birthday datetime;

desc table_03

 

 

MySQL 맨 앞에 컬럼 추가하기.

 

Alter table ~ add ~ 명령을 실행하면 컬럼의 맨 마지막에 추가 되지만 first를 붙이면 새로운 컬럼이 맨 앞에 추가 됩니다.

desc table_04;

alter table table_04 add birthday datetime first;

desc table_04;

 

MySQL 추가할 컬럼의 위치를 자유롭게 지정하기.

 

After를 사용하면 추가할 위치를 자유롭게 지정할 수 있습니다.

다음은 table_05에서 컬럼 number의 뒤에 컬럼 birthday를 추가하는 예입니다.

desc table_05;

alter table table_05 add birthday datetime after number;

desc table_05;

 

MySQL 컬럼의 순서 변경하기.

 

컬럼순서가 맨 뒤에 있는 birthday 컬럼을 맨 앞으로 변경해 보겠습니다.

desc table_03;

alter table table_03 modify birthday datetime first;

desc table_03;

 

MySQL 컬럼 이름과 자료형 수정하기.

 

컬럼 이름과 자료형를 변경할 때는 alter table ~ change ~ 명령을 사용합니다.

Alter table 테이블명 change 변경전컬럼명 변경후컬럼명 변경후자료형;

 

테이블 table_03의 컬럼 birthday date형으로 수정하고 컬럼 이름을 birthdate로 수정해 보겠습니다.

desc table_03;

alter table table_03 chanage birthday birthdate date;

desc table_03;

 

MySQL 컬럼 삭제하기.

 

컬럼을 삭제하는 명령어는 drop를 사용합니다.

Alter table 테이블명 drop 컬럼명;

 

table_03에 있는 컬럼 birthdate를 삭제해보겠습니다.

desc table_03;

alter table table_03 drop birthdate;

desc table_03;

 

반응형

'MySQL' 카테고리의 다른 글

MySQL 컬럼 초기값 설정하기.  (1) 2017.10.17
MySQL 기본 키 설정하기.  (0) 2017.10.08
MySQL 프롬프트명 변경하기.  (0) 2017.09.25
MySQL 자료형.  (0) 2017.09.24
MySQL 데이터 표시하기 (select 사용하기)  (0) 2017.09.21
Posted by 컴스터
,
반응형

MySQL 콘솔창의 프롬프트명을 자기가 표시하고자 하는 내용으로 설정할 수 있습니다.

MySQL 콘솔창에 prompt 지정할프롬프트명> 이렇게 하면 프롬프트 명이 변함니다.

) prompt comster>  이렇게 해보겠습니다.

 

원래대로 돌아 갈려면 콘솔창에 그냥 prompt 만 치면 됩니다.

 

 

프롬프트 옵션.

\d 데이터베이스 이름.

\h 호스트 이름.

\u 사용자 이름

 

prompt 컴스터 \d >; 이렇게 실행 보겠습니다.

반응형
Posted by 컴스터
,

MySQL 자료형.

MySQL 2017. 9. 24. 12:23
반응형

MySQL 자료형.

 

자료형이란?

데이터베이스의 테이블에 데이터를 저장할 경우 각 컬럼에 설정한 자료형 데이터만 입력할 수 있습니다. 예를 들어 숫자형를 설정한 컬럼에는 숫자형외의 데이터를 입력할 수 없습니다.

날짜형을 설정한 컬럼에는 날짜 형식의 데이터만 입력할 수 있습니다. 이러한 데이터의 형식을 자료형이라고 합니다.

 

숫자 자료형의 종류

자료형

숫자 범위

INT

-2147483648 ~ 2147483647

TINYINT

-128 ~ 127

SMALLINT

-32768 ~ 32767

MEDIUMINT

-8388608 ~ 8388607

BIGINT

-9223372036854775808 ~ 9223372036854775807

FLOAT

-3.402823466E+38 ~ -1.175494351E-38

DOUBLE

-2.2250738585072014E-308 ~ 1.7976931348623157E+308

DECIMAL

DECIMAL(최대자릿수, 소수점 이하 자릿수)형식으로 최대자릿수는 65까지 이며, 소수점 이하 자릿수는 30까지 지정할 수 있다. 오차는 발생하지 않는다.

 

숫자 지수형 의미.

7.15E + 22 = 7.15 X 1022   
 

문자열 자료형 종류

자료형

문자열 범위

CHAR

255자 까지

VARCHAR

1 ~ 65532바이트, 문자 수의 상한은 이용하는 문자 코드에 따라 다르다.

TEXT

65535자 까지

LONGTEXT

4294967295자 까지

 

255자 까지는 VARCHAR, 그 이상은 TEXT형이라고 간단히 기억하면 좋을 것 같습니다.

CHAR 형은 고정형으로 지정한 문자 수에 맞춰 공백이 추가 됩니다.

VARCHAR 형은 가변형으로 데이터를 저장할 때 공백이 추가되지 않습니다.

예를 들어 CHAR(100) 이라 지정하면 10글자를 입력해도 100글자 들어 갈 만큼 공간을 차지하고 VARCHAR(100) 이라 지정하면 10글자만 입력하면 10글자 외의 데이터를 저장할 공백이 추가 되지 않습니다.

 

문자열 입력하기

문자열 데이터를 입력할 때는 큰따옴표(“) 또는 작은따옴표(‘)로 감쌉니다.

작은따옴표 자체를 입력할때는 그 앞에 역슬래시(\)를 붙여서 입력합니다.

이러한 방법을 이스케이프(escape) 처리라고 합니다. 여기서 역슬래시(\)는 글꼴에 따라 통화 기호(\)로 표시되기도 합니다.

 

날짜와 시간 자료형의 종류

 

날짜와 시간을 저장할 수 있는 자료형에는 DATE(날짜), TIME(시간), YEAR(), DATETIME(날짜와 시간) 등이 있습니다.

자료형

범 위

DATETIME

1000-01-01 ~ 9999-12-31 23:59:59

DATE

1000-01-01 ~ 9999-12-31

YEAR

1901 ~ 2155(4자릿수일 때) 1970 ~ 2069(70 ~ 69)(2자릿수일 때)

TIME

-838:59:59 ~ 838:59:59

반응형
Posted by 컴스터
,
반응형

데이터 표시하기 (select 사용하기)

 

 

컬럼 데이터를 표시하려면 select 명령을 사용합니다. Select 명령은 SQL문 중에서 가장 많이 사용하는 명령입니다.

 

Select 컬럼명, 컬럼명, … from 테이블명;

테이블명이 table_01에 있는 컬럼 numbername을 표시할 때에는 다름 명령을 실행합니다.

Select number, name from table_01;

컬럼명을 일일이 지정하는 것이 번거롭다면 모든 컬럼을 의미하는 * 를 사용해도 됩니다.

다음 명령어를 실행해서 모든 컬럼을 표시합니다.

Select * from table_01;

 

 

 

 

 

테이블 복사하기

테이블 복사하기는 기존에 데이터가 있는 테이블을 데이터을 그대로 복사하면서 테이블명이 다른 테이블을 생성하는 방법입니다.

다음과 같은 명령어를 사용하여 table_01과 같은 table_02, table_03, table_04를 생성합니다.

Create table table_02 select * from table_01;

Create table table_03 select * from table_01;

Create table table_04 select * from table_01;

 

테이블 복사한 후 잘 생성 되었나 확인해 봅니다.

Select * from table_02;

 

 

반응형
Posted by 컴스터
,
반응형

테이블에 데이터 추가하기 (insert into 사용하기).

 

테이블에 데이터를 추가하는 명령어는 insert into 를 사용합니다.

Insert into 테이블명 values (데이터_01, 데이터_02, …);

Values 괄호 안에 컬럼 순서대로 데이터를 입력할 때 쉼표로 데이터를 구분합니다.

숫자 데이터는 그냥 숫자만 입력하면 되지만 문자열 데이터는 큰따옴표(“)또는 작은 따옴표(‘)를 사용해야 합니다. 여기서는 작은 따옴표를 사용합니다.

이제 다음과 같이 데이터를 입력해 보겠습니다.

insert into table_01 values(‘A1’, ‘강백호’, 40);

 

 

컬럼 이름을 지정해서 데이터 추가하기.

 

Insert into 테이블명 (컬럼명, 컬럼명, …) values(데이터, 데이터, …);

컬럼 이름을 지정할 때는 테이블의 컬럼 순서에 관계없이 insert into 에 지정한 순서대로 입력 됩니다.

 

Insert into table_01 (number, name, age) values(‘A2’, ‘김민우’, 29);

Insert into table_01 (age, name, number) values(20, ‘김우빈’, ‘A3’);

 

 

데이터를 한 번에 입력하기.

 

레코드를 하나씩 입력하는 것이 아니라, 여러 개의 레코드를 한 번에 입력하는 방법입니다.

Insert into 테이블명 (컬럼명, 칼럼명, …) values (데이터, 데이터, …), (데이터, 데이터, …), (데이터, 데이터, …)…;

 

Insert into table_01 (number, name, age) values (‘A4’, ‘문성근’, 24), (‘A5’, ‘박찬호’, 47), (‘A6’, ‘이수만’, 60);

 

반응형
Posted by 컴스터
,
반응형

MySQL 테이블 컬럼 구조 확인하기. (desc 사용하기)

 

테이블의 컬럼 구조를 표시하는 명령은 desc 입니다.

desc 테이블명;

desc table_01;

 

 

 

Field : 컬럼 이름.

Type : 자료형.

Null : Null 허용 유무. YES 는 아무것도 입력하지 않아도 된다는 의미.

Key : Key 종류를 의미함. ) PRI.

Default : 아무것도 입력하지 않으면 설정되는 기본값을 나타냄.

Extra : 기타 정보를 표시함. ) auto_increment.

 

반응형
Posted by 컴스터
,
반응형

MySQL 테이블 만들기.

 

테이블을 만들 때는 create table 이라는 명령을 사용합니다.

create table 테이블명 (컬럼명_01 자료형, 칼럼명_02 자료형, 컬럼명_03 자료형, ….);

컬럼명 number, name, age 가지는 table_01 를 만들어 보겠습니다.

create table table_01 (number varchar(10), name varchar(10), age int);

 

 

MySQL 모든 테이블 표시하기

 

MySQL에서 데이터베이스에 존재하는 모든 테이블을 표시하려면 show tables 라는 명령어를 입력합니다.

show tables;

위의 명령어를 실행하면 방금 전에 생성했던 table_01이 보입니다.

 

반응형
Posted by 컴스터
,
반응형

MySQL 새로운 사용자 만들기, 모든 접근 권한을 설정하는 방법.

 

사용자 생성하기.

create user 사용자 이름 identified by ‘비밀번호’;

여기서 사용자 이름은 사용자이름@호스트이름 으로 사용합니다.

호스트 이름은 여기서는 localhost에서 사용하기 때문에 localhost를 적어 줍니다.

 

사용자 권한 설정하기.

grant 부여할 권한 on 데이터베이스이름.테이블이름 to 사용자이름;

 

 

comster_user@localhost 라는 사용자와 comster 데이터베이스에 있는 모든 테이블에 모든 권한으로 생성해 보겠습니다.

create user comster_user@localhost identified by ‘12345’;

grant all on comster.* to comster_user@localhost;

 

 

 

quit; 명령으로 MySQL 콘솔창을 종료했다가 명령 프롬프트에서 새로 생성한 사용자로 실행해 봅시다.

mysql –u comster_user –p12345

 

MySQL 콘솔창으로 잘 접속이 됩니다.

반응형
Posted by 컴스터
,


반응형