설치 파일은
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 로 안에 있는 모든 테이블을 보여주는걸로 끝납니다.
이걸... 모듈화 해서 서버 프로그램에서 이리저리 짓거리 하는게 핵심이죠..
'윈도우 서버에 대해서' 카테고리의 다른 글
지금 PC의 IP 알아내기 (0) | 2012.06.08 |
---|---|
효율적으로 MSDN을 보는 방법 (0) | 2010.08.08 |
이전에 만들던 게임서버 윈도우 버젼으로 컨버팅... (0) | 2009.02.01 |
MySQL C API 예제 (0) | 2008.06.19 |
MySQL C API (0) | 2008.06.19 |