2011-09-26 6 views
4

메신저 지금은 델파이를 사용하고 다른 프로그램 (서버)에 연결하여 mysql 데이터베이스가있는 프로그램에 연결하여 데이터를 다시 고객. 나는 서버 프로그램과 데이터베이스를 가지고있는 웹 서버를 가지고 있지만 나의 질문은 웹 서버의 mysql 데이터베이스 (윈도우와 미래의 맥)를 만든 클라이언트 프로그램에서 바로 갈 수 있는가? 아니면 정말 서버 프로그램이 필요합니까? 그렇다면 클라이언트 프로그램을 인터넷을 통해 MySQL 데이터베이스에 연결하려면 어떻게해야합니까?데이터베이스 정보를 프로그램에 가져 오는 가장 좋은 방법은 (windows와 mac)

고맙습니다.

+0

그 수 2 계층 V 3 계층 아키텍처의 기본적인 논의는 MySQL이 직접 인터넷을 통해 액세스 할 수 있습니다,하지만 그것을 시도하고 확보하기 위해 별도의 노력이 필요하고,이 불가능할 수 있습니다. – becomingwisest

+0

당신은 '서버 프로그램이있는 웹 서버'가 있다고 말했습니까?이 '서버 프로그램'은 지금 무엇을합니까? 바퀴를 다시 만들지 마십시오. 특히 다른 사람의 코드를 인계 받으면 더욱 그렇습니다. – Vector

+0

2 단 또는 3 단. 그게 질문입니다. – Sam

답변

1

원격 액세스를 허용하는 데이터베이스에 대해 사용자/pw 콤보를 작성한 경우 (보안 논의는 제외) 직접 mysql 데이터베이스에 액세스 할 수 있어야합니다. 그러면 프로그램과 mysql 간의 통신을 쉽게하는 호환 가능한 mysql 라이브러리를 검색하려고 할 것이다. 기술적 인 측면에서 mysql 소켓을 직접 읽고 쓸 수는 있지만 가능하다.

1

클라이언트 프로그램이 계속 기본 응용 프로그램인지 또는 브라우저 기반 클라이언트로 마이그레이션 할 것인지 여부에 따라 달라집니다.

네이티브 응용 프로그램 인 경우 작성한 언어에 대한 라이브러리 구성 요소를 가져 와서 MySQL 데이터베이스와 직접 통신 할 수 있습니다. Delphi에는 많은 옵션이 있습니다. 네이티브 맥 개발에서 어떤 옵션을 사용할 수 있는지 잘 모르겠다. (물론 엠바 카데로는 맥 애플리케이션을 생성 할 수있는 델파이를 개발 중이다.)

그러나 클라이언트 기반 브라우저를 만들 계획이라면 아약스 솔루션은 데이터베이스 서버가 아닌 웹 서버와 통신하려고합니다. 이 경우 미들웨어를 유지 관리해야합니다. 브라우저 기반 응용 프로그램이 데이터베이스 서버와 직접 통신 할 수 있는지 여부에 대한 설명은 this question을 참조하십시오.

1

이 경우 SOAP/XML을 사용하고 클라이언트에서 SQL을 완전히 분리합니다.

0

REST (예 : JSON 인코딩 된 데이터베이스 레코드 사용)가 유용 할 수있는 일반적인 사용 사례입니다. lkJSON 또는 SuperObject를 사용하여 Delphi 클라이언트를 구현하면 HTTP 응답의 데이터베이스 레코드를 TClientDataSet에 넣을 수 있습니다.

0

네, 가능하지만 좋은 생각입니까?

here

관련 문제