본문 바로가기

개발정보

MySQL 명령어

DB접속

> mysql -u 계정ID -p 계정PW;

 

DB 목록보기

> show databases;

 

DB 선택하기

> use DB명;

 

DB 생성

> mysqladmin -u root -p root계정비밀번호 create database 새로운DB명;

 

DB 삭제

> mysqladmin -u root -p root계정비밀번호 drop database 새로운DB명;

 

계정추가

> mysql -u 새로운아이디 권한설정(select, insert, delete, alter, drop, create 등) -p 사용할비밀번호;

 

테이블 생성

>create table 테이블명(컬럼명 타입 조건);

ex.) create teble test(no int NOT NULL, t_name varchar(20), content TEXT(255));

 

테이블 목록보기

> show tables;

 

테이블 이름 변경

> alter table 테이블명 rename 변경할테이블명;

 

테이블 삭제

> drop table 테이블명;

 

테이블 구조 확인

> desc 테이블명;

> explain 테이블명;

 

테이블 컬럼(필드) 추가

> alter table 테이블명 add 추가할필드명 타입 조건 first 또는 after 필드명;

ex) alter table test add name varchar(20) after age; // test 테이블에 name 필드를 age뒤에 생성한다.

 

테이블 컬럼(필드) 삭제

> alter table 테이블명 drop 삭제할필드명;

 

데이터 입력

> inset into 테이블명 values('필드값','필드값','필드값');

 

데이터 수정

> update 테이블명 set 수정할필드명='수정할필드값' where 조건필드명='조건데이터값';

ex) where 조건식에 의한 테이터를 지정하지 않을 경우  해당 필드의 수정값이 모든 데이터에 반영되니 주의.

ex) update test set age='35' where name='최민호'; //test 테이블의 name값이 최민호인 데이터의 age 값을 35로 수정한다.

 

데이터 삭제

> delete from 테이블명 where 조건검색필드명='조건검색데이터값';

 

데이터 검색

> select * from 테이블명; // 모든 필드 데이터를 검색

> select 필드명,필드명 from 테이블명; // 지정한 필드의 데이터만 검색

 

데이터 검색 조건

> select * from 테이블명 where 조건;

ex) select * from test where age='35'; // test 테이블에서 age가 35인 데이터를 검색한다.

ex) select * from test where age<'35'

ex) select * from test where age >'25' and age<'35';

ex) select * from test where age='35' and name='최민호' and sex='남';

ex) select * from test where name like '민%'; // '민'으로 시작하는 데이터를 검색

ex) select * from test where name like '%민'; // '민'으로 끝나는 데이터를 검색

ex) select * from test where name like '%민%'; // '민'을 포함하고 있는 데이터를 검색

 

데이터 정렬

> select * from 테이블명 order by 정렬기준필드명

ex) select * from test order by no // no 필드값 기준으로 오름순 정렬

ex) select * from test order by no desc // no 필드값 기준으로 내림순 정렬

 

검색된 데이터의 일부만 가져오기

> select * from 테이블명 기준필드명 asc limit 시작번호,검색할데이터수;

ex) select * from test num asc limit 0,20; // test 테이블에서  num필드 값을 기준으로 첫번째(0)부터 20개의 데이터를 검색한다.

ex) select * from test were age<'35' order by num desc, num asc limit 0,20