설치 파일은

http://dev.mysql.com/downloads/mysql/6.0.html 

 설치법은
http://blog.naver.com/infopub/100052196232
여기 블로그를 참고..

 현재 6.0 alpha 버젼이 나와서 그걸 설치 했습니다..

 mysql 은... 무료버젼의 db 동접은 기본 100 ~ 500 정도 이지만.. (manual setting 으로 바꿀 수 있지만..) 여튼...
상용화 아닌 이상 그런 큰건 필요 없고, 어차피 sql 문법만 통하면 되는거니
상관없다고 봅니다...

(MS-SQL은 뭔가 C#이니 .asp 니... 쩝...귀찮 ㅡ_ㅡ.. )

 설치시, mysql 설치 유형에서 custom 으로 해서 include, lib 파일 모두 설치 할 수 있도록 해야 프로그래밍 하기 편합니다.

Visual Studio 셋팅은.. DirectX 하던식
Include, Lib 디렉토리 설정해 주면 됩니다...

리눅스에서 vi 를 쓸때.. make 파일 만들어서...

cc -c db.c -I/usr/include/mysql -lmysqlclient 와 같이 해줘야 하는거랑 같은 작업이죠

 기본 API 는

 /////////////////////////////////////////////////////////////////////////////////////

#include <stdio.h>
#include <windows.h>
#include <mysql.h>
#include <stdlib.h>

MYSQL mysql; // 자료형? 선언

void qur(char *a)
{
 if(mysql_query(&mysql, a)==0)
  printf("%15s 가 전달되었습니다\n",a);
 else
  printf("쿼리 전송 에러\n");
}


void prin()
{
 MYSQL_RES* res ;
 MYSQL_ROW row ;
 int fields;
 res = mysql_store_result( &mysql ) ;
 if(res!=0)
 {
  fields = mysql_num_fields(res) ;
  while(row = mysql_fetch_row( res ))
  {
   printf("%s \n", row[0]) ;
  }
 }
}
void main(void)
{
 
 mysql_init(&mysql) ;
 if(!mysql_real_connect(&mysql, "localhost",       // DB PC, IP
                                               "root",               // DB ID
                                               "1234",              // DB pw
                                                NULL ,  
                                                3306,                // DB Port
                                                (char *)NULL, 0))
   exit(1);
 else
  printf("연결되었습니다.\n") ;
 char qurey[1000]="show databases";
 qur(qurey);
 prin();
 qur("use rosagigantea");
 qur("show tables");
 prin();

 mysql_close(&mysql);
}

///////////////////////////////////////////////////////////////////////////////////////

위의 소스를 main.c (cpp 도 상관없고) 로 copy 해서 alt+f8 로 정렬한뒤
libmysql.lib mysqlclient.lib 를 선언해 주고 (그 winmm.lib 나.. ws2_32.lib 같은곳에)
컴파일 해보고 libmysql.dll 파일 없다고 하면...

을 다운해서

성공하면... root의 database 모든 목록이 출력됩니다.
(물론 이전에 rosagigantea 라는 db를 미리 만들어 놨습니다 ;;)

중요한건.. 역시..

mysql_real_connect(&mysql, "localhost", "root","1234", NULL,3306, (char *)NULL, 0))
이 함수 겠죠..
뜻은, mysql 쿼리를 생성한다, localhost(즉 이 컴퓨터), id는 root, 암호는 1234, 기본DB 없고, port는 3306 이란 뜻입니다.

최종적으로 성공한 화면입니다..


  보면 show databases 로 모든 db를 표시해주고

use rosagigantea (이전에 create database rosagigantea 로 db를 생성했습니다) 로 rosagigantea 라는 db를 사용하고

show tables 로 안에 있는 모든 테이블을 보여주는걸로 끝납니다.

이걸... 모듈화 해서 서버 프로그램에서 이리저리 짓거리 하는게 핵심이죠..

+ Recent posts