728x90

<DATABASE>

 

db 접속 :  mysql -u계정 -p비밀번호 데이터베이스명

  - C:₩> mysql -ukdhong –p1234 kdhong_db

 

 

 

db 생성 : create database 데이터베이스명;

 -  mysql> create database sample1;

 

 

 

db 목록 보기 : show databases;

   -  mysql> show databases;

 

 

 

db 삭제 :  drop database 데이터베이스명;

  -  mysql> drop database sample1; 

 

 


 

 

 

<TABLE>

 

 

 

테이블 생성 명령 : mysql> create table 테이블명( 필드명1 타입, 필드명2 타입, 필드명3 타입, ........... PRIMARY KEY(필                                                                                                                                         드명) );

            mysql> create table friend ( -> num int not null, -> name char(10), -> address char(80), -> tel char(20), ->               email char(20), -> primary key(num) -> );

 

 

 

 

테이블 필드 구조 확인 : desc 테이블명;

                      mysql> desc friend;

 

 

 

 

새로운 필드 추가 명령 : alter table 테이블명 add 새로운 필드명 필드타입 [first 또는 after 필드명];

  ex)friend 테이블 나이 필드를 정수형으로 추가

  1. mysql> alter table friend add age int;

  2. mysql> desc friend; (확인)

 

 

 

 

필드 삭제 : alter table 테이블명 drop 삭제할 필드명1, 삭제할 필드명2;

  ex) friend 테이블에서 email과 age 필드 삭제

  1. mysql> alter table friend drop email;

  2. mysql> alter table friend drop age;

 

 

 

필드 수정 : alter table 테이블명 change 이전 필드명 새로운 필드명 필드 타입;

   ex) friend 테이블 필드 중 tel char(20)을 phone int로 변경 

   mysql> alter table friend change tel phone int;

 

 

 

 

필드 타입 수정 명령 : alter table 테이블명 modify 필드명 새로운 타입;

  ex) name 필드의 타입을 int로 변경

   mysql> alter table friend modify name int;

 

 

 

 

 

테이블명 수정 명령 : alter table 이전 테이블명 rename 새로운 테이블명;

  ex) 테이블명 friend에서 student로 변경

  mysql> alter table friend rename student;

 

 

 

 

테이블 삭제 : drop table 테이블명;

 

 

 

 


 

 

 

 

<RECORD>

 

 

특정 문자열이 포함된 레코드 검색 명령 : select 필드명1, 필드명2, from 테이블명 where 검색 필드 like 조건식;

  ex) 성이 김씨인 사람의 이름, 주소, 전화번호 보기

  mysql> select name, address, tel from mem where -> name like '김%';

 

 

 

레코드 정렬 명령 : select 필드명1, 필드명2 from 테이블 명 order by 필드명;

   ex) 나이순 정렬, age, id, name, tel 필드 검색 

   오름차순 정렬 명령 mysql> select age, id, name, sex, tel from mem -> order by age;

   내림차순 정렬 명령 mysql> select age, name, address from mem -> where address like '서울%' order by age desc;

 

 

 

레코드 수정 명령 : update 테이블명 set 필드명=필드값 [where 조건식]

 ex) mem 테이블에서 아이디가 yjhwang인 레코드의 전화번호를 123-4567로 변경

 1. mysql> update mem set tel='123-4567' where id='yjhwang';

 2. mysql> select id, name, tel from mem where id='yjhwang';

 

 

 

레코드 삭제 명령 : delete from 테이블명 where 조건식

 

 

 

데이터베이스 백업 명령 : mysqldump -u계정 -p비밀번호 데이터베이스명 > 백업파일명

  ex) kdhong 계정의 kdhong_db 를 kdhong_db.sql에 백업 

  C:₩kdhong> mysqldump -ukdhong -p1234 kdhong_db -> kdhong_db.sql

 

 

백업 파일 복원 : mysql -u계정 -p비밀번호 데이터베이스명 < 백업 파일명

 ex) kdhong_db.sql을 다른 사용자 계정에 복원 

   계정 : kim, 비밀번호 : 1234, 데이터베이스명 : kim_db 

   C:₩kdhong>mysql -ukim -p1234 kim_db < kdhong_db.sql

 

 

 

 

 

 


 

 

 

 

 

<FUNCTION>

 

1. mysql_connect()

 

php 와 Mysql 을 연결 . (C:\>mysql -ukdhong -p1234’와 같은 기능)

 

 

 

2. mysql_select_db()

 

사용할 데이터베이스를 선택. ( ‘mysql>use kdhong_db;’와 같은 명령 )

 

 

 

 

3. mysql_query()

 

함수의 인자에 있는 sql 명령을 실행. 

 

 

 

 

4. mysql_close()

 

mysql과의 연결 종료

 

 

 

 

5. mysql_fetch_array()

 

데이터베이스에서 레코드의 데이터를 배열 형태로 가져온다.

가져온 데이터는 $row[num], $row[id]와 같이 레코드의 필드명을 배열 인덱스에 직접 입력한 형태로 사용한다.

 
ex for 문에서의 어레이함수. 위에서 select * 로 한 열(가로)을 지정해 줬을때, for 문을 돌리면
mysql_fetch_array[0] -> 첫번째 행 (세로)
mysql_fetch_array[0] -> 두번째 행
mysql_fetch_array[0] -> 세번째 행

 반복되는게 곧 행의 변경.

 

6. mysql_fetch_row()

 

데이터베이스에서 레코드의 데이터를 배열 형태로 가져온다.

array mysql_fetch_array() 함수와 동일한 기능을 수행하지만, 가져온 데이터는 레코 드의 필드 번호를 배열 인덱스에 입력한 $row[1], $row[$i]와 같은 형태로 사용하는 점 이 다르다.

 

 

 

7. mixed mysql_result(resource result, int row, mixed field)

   - 첫 번째 인자: 식별자 번호(mysql_query()의 반환값)

   - 두 번째 인자: 레코드의 행 위치

   - 세 번째 인자: 레코드의 열 위치

 

레코드의 특정 위치에 저장된 값을 가져온다.

mysql_fetch_row()와 mysql_fetch_array() 함수가 하나의 레코드 정보를 가져오는 반 면,

mysql_result() 함수는 특정 위치에 해당하는 값을 가져온다.

세 번째 인자에는 필 드의 일련번호(0부터 시작)와 필드명을 모두 사용할 수 있고,

반환값의 형태에 따라 반 환값의 타입이 달라진다.

 

 

8 .mysql_num_fields()

형식> int mysql_num_fields(resource result)

인자의 필드 개수를 알려준다.

 이중포문에서 필드의 갯수까지만 돌리도록 설계할 때 사용했음.

 

 

9. mysql_num_rows()

레코드의 개수를 알려준다.

+ Recent posts