..열심히 공부하세../JSP

[04] MySQL root계정 비번 변경 및 SQL문 실습

댄스댄스 2012. 2. 9. 00:27

 

[MySQL root계정 비번 변경]

 

   - MySQL 서버 실행
   - root계정으로 접속 : 최고 관리자 계정이며, 처음 MySQL설치 시 패스워드가 지정되어 있지 않다
   - cmd창에서

      d:

     cd d:\JSP_201202AM\mysql51\bin 폴더 이동
   - d:\JSP_201202AM\mysql51\bin>mysql -u root    //-u: 계정지정

   - mysql>show databases;

   - mysql>use mysql;      //mysql 데이터베이스 사용

   - mysql>show tables;   //mysql 데이터베이스에 있는 테이블 보기

   - mysql>select host,user,password from user; //user테이블의 레코드 보기

   - mysql>update user SET password=PASSWORD('1234') where user='root';

                //root계정의 비밀번호 '1234'를  암호화해서 수정한다.

   - mysql>flush privileges;  //권한 및 계정 정보를 서버에 재적용한다.

   - mysql>select host,user,password from user; //user테이블의 수정된 레코드 보기

   - mysql>exit //MySQL 빠져 나가기

 

   //비밀번호 지정후 다시 root계정으로 접속

   //-u: 로그인 계정 지정
   //-p: 패스워드를 입력받는 계정임을 명시, 패스워드가 있으면 반드시 명시

  

- d:\JSP_201202AM\mysql51\bin >mysql -u root -p

 

** MySQL 종료는 작업관리자에서 -> mysqld.exe 선택 -> 프로세스 끝내기 !!

 

 

[SQL문 실습]

 

show databases; //데이터베이스 목록 보기
drop database test; //test 데이터베이스 삭제
create database test; //test 데이터베이스 생성

use test; //test 데이터베이스 사용
show tables; //테이블 목록 보기

 

- 성적테이블 생성하기

create table tb_sungjuk(
  sno int not null,
  uname varchar(20) not null,
  kor int default 0,
  eng int default 0,
  mat int default 0,
  aver int null,
  address varchar(10) null
);

 

- 성적테이블에 레코드 추가하기

insert into tb_sungjuk(sno,uname,kor,eng,mat,address)
values (1, '개나리',90,80,50,'seoul');

 

insert into tb_sungjuk(sno,uname,kor,eng,mat,address)
values (2, '진달래',50,60,72,'jeju');

 

insert into tb_sungjuk(sno,uname,kor,eng,mat,address)
values (3, '무궁화',100,50,70,'busan');

 

insert into tb_sungjuk(sno,uname,kor,eng,mat,address)
values (4, '봉숭아',70,80,50,'incheon');

 

insert into tb_sungjuk(sno,uname,kor,eng,mat,address)
values (5, '해바라기',40,50,10,'suwon');

 

- 평균 구하기

update tb_sungjuk set aver=(kor+eng+mat)/3;

 

- where 조건절

select * from tb_sungjuk where sno=3

 

- 대표문자 %
select * from tb_sungjuk where address like 's%';
select * from tb_sungjuk where address like '%s';
select * from tb_sungjuk where address like'%s%';

 

- 정렬방식 order by
- desc 내림차순
- asc 오름차순. 생략가능
select * from tb_sungjuk order by sno desc;

 

 

[MySQL 자료형]

 

1. 숫자형

   - tinyint

   - int
   - bigint
   - float

   - double

 

2. 문자형  
   - char : 고정형
   - varchar : 가변형

   - text : 65535개 문자 지정


3. 날짜형

   - DATETIME

   - DATE

 

 

[MySQL 제약조건]

 

1. null / not null

 

2. default

 

3. auto_increment

   - 순서대로 정수형 일련번호 생성된다.

   - 칼럼의 타입은 정수형이어야 한다.

   - NOT NULL이어야 한다.

   - PRIMARY KEY이어야 한다. 중복된 값이 절대 입력 안된다.

   - 예) sno  int  NOT NULL AUTO_INCREMENT PRIMARY KEY