메뉴 바로가기 검색 및 카테고리 바로가기 본문 바로가기

한빛출판네트워크

IT/모바일

Flex를 이용한 MySQL 관리(2)

한빛미디어

|

2008-03-05

|

by HANBIT

12,041

제공 : 한빛 네트워크
저자 : Jack Herrington
역자 : 이대엽
원문 : Administering MySQL Using Flex

테이블 보기 코드 만들기

Flex 애플리케이션 예제의 마지막 단계는 테이블의 드롭 다운 메뉴를 채우고 선택된 테이블의 데이터를 데이터 그리드에 보여주는 작업을 처리하는 것이다. 예제의 전체 코드는 [리스팅 4]에 나타나 있다.

[리스팅 4] flexmysql.mxml
 
 
 
 
 
 
 
 
 
     
     
     
 
 
     
     
     
 
 
 
 

가장 크게 바뀐 부분은 테이블 목록을 가져온 다음 onResult()에서 테이블 목록을 채우는 onSelectDatabase() 코드를 추가한 것과 onResult() 핸들러에서 데이터 그리드에 데이터를 설정하는 onSelectTable()를 추가한 것이다.
브라우저에서 예제를 실행하면 [그림 3]과 같은 결과를 볼 수 있다.


[그림 3] "show tables"쿼리를 실행한 후

여기에서는 내가 NASA Ames 연구 센터에서 강의할 때 만들었던 nasa 데이터베이스를 사용할 것이다(그렇다, 내가 "로켓 과학" 농담을 하곤 했던 이유는 로켓 과학자들과 많은 이야기를 나눌 수 있었기 때문이다). 데이터베이스에는 mission이라는 테이블만 하나 들어 있는데, 이 테이블에는 NASA에서 쏘아 올렸던 각 무인 비행 임무의 명칭과 연도가 들어 있다.
[그림 4]에 나타나 있는 것과 같이 데이터 그리드에서 이름 컬럼을 클릭하면 이름순으로 정렬할 수 있다.


[그림 4] mission테이블의 데이터 보여주기

그리고 [그림 5]에 나타나 있는 것과 같이 연도 컬럼을 클릭해도 연도순으로 정렬할 수가 있다.


[그림 5] 가지각색으로 바뀌는 쿼리(disco ball query)

근 2년 동안에는 비행을 많이 하지는 않은 것 같다.

다음 단계

여기서부터는 이 예제를 가지고 해볼 수 있는 것들이 많이 있다. 프론트 엔드에서는 Flex로 테이블을 추가하고, 삭제하고, 갱신하는 보다 사용자 친화적인 컨트롤을 추가할 수도 있다. 더 나아가 테이블내의 데이터를 변경하는 데이터 필터링이나 편집 기능을 제공할 수도 있다. 그리고 데이터 그리드 컨트롤은 그 자리에서 직접 편집하는 것을 처리할 수 있을 정도로 막강하다. 아니면 전혀 다른 방향으로 나아가 Flex 차트 패키지를 이용하여 데이터 분석이나 데이터 시각화를 할 수도 있을 것이다.

결론

나는 PHP와 Flex을 조합하는 데에는 상당한 잠재력이 있다고 생각한다. PHP는 백 엔드의 웹 서비스를 HTML 프론트 엔드와 결합하거나 결합하지 않고도 손쉽게 전달할 수 있게 해준다. 나는 PHPMyAdmin이 Flex, Ajax, 실버라이트, 데스크톱 위젯 등의 프론트 엔드를 누구나 작성할 수 있도록 웹 서비스 인터페이스를 이용하여 확장되길 바란다.

Flex는 PHP 개발자를 위해 견고한 프론트 엔드 도구를 제공해 준다. Flex는 Ajax 개발자를 괴롭히는 클라이언트측 비호환성 문제를 벗어나게 해준다. Flex 2를 이용하면 특정 서버 기술에 종속되지 않으므로 Flex 애플리케이션을 컴파일된 후에는 애플리케이션을 어디에도 배포할 수가 있는데, 이는 애플리케이션이 단순 SWF 파일이기 때문이다. 여러분도 알다시피 손쉬운 웹 서비스 객체와 강력한 E4X 언어 확장을 이용하면 Flex 애플리케이션에서 백 엔드에 있는 거의 모든 것들과 매우 쉽게 통신할 수가 있다.

여러분도 한번쯤 시도해 보길 바라며, PHP와 Flex로 재미있는 것을 하고 있다면 나한테 알려 주면 그것에 관해 함께 기사를 쓸 수도 있을 것이다.

참고자료
  • Flex는 Adobe에서 제작한 오픈 소스 플래시 애플리케이션 개발 언어이다.
  • 데이터베이스에 접속하는 데에는 MDB2 PEAR 모듈을 사용하였다.

저자 Jack Herrington은 20년 이상의 경험을 가진 수석 소프트웨어 엔지니어이다. 그는 Code Generation in Action, Podcasting Hacks, PHP Hacks의 저자이며 30편 이상의 기사에서 다양한 분야에 걸친 기술들에 관해 다루었다.
TAG :
댓글 입력
자료실