안드로이드에서 JDBC로 큐브리드에 직접 연결

by 매력의신 posted Mar 14, 2013

결론부터 말씀드리면 가능합니다.

방금 성공햇구요.


1번째 준비물은 당연히 서버에 큐브리드가 깔려있어야 하겟구요 ㅎㅎ

다운로드에 있는 JDBC를 다운 받습니다.

-src아니라 ㅎ

JDBC-8.4.3.1005-cubrid.jar 저는 이걸 사용햇습니다 ㅎ


안드로이드 프로젝트를 하나 생성합니다.

프로젝트 생성한 폴더에 가서 libs안에 JDBC-8.4.3.1005-cubrid.jar파일을 넣습니다.


이클립스에서 프로젝트를 클릭하고 F5를 누르면 라이브러리가 등록되어 있을겁니다 ㅎ


메니페스트에 <uses-permission android:name="android.permission.INTERNET" />

이녀석을 등록해줍니다.


메인 풀소스 입니다.


package com.example.asd;


import java.sql.*;


import android.app.*;

import android.os.*;

import android.util.*;

import android.view.*;

import android.widget.*;


public class MainActivity extends Activity {


Button button1;


Connection conn = null;

Statement stmt = null;

ResultSet rs = null;


@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);


c();

button1 = (Button) findViewById(R.id.button1);

button1.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View v) {

s();

}

});

}


// 커넥트 부분

void c() {

try {

Class.forName("cubrid.jdbc.driver.CUBRIDDriver");

// ("jdbc:CUBRID:서버아이피:포트:디비명:::?케릭터셋",아이디,패스워드)

conn = DriverManager

.getConnection(

"jdbc:CUBRID:192.168.100.135:33000:demodb:::?charset=euc-kr",

"public", "");

conn.setAutoCommit(false);

} catch (Exception e) {

Log.e("c", e.getMessage());

}

}


void s() {

try {

String sql = "select f_name from code";

stmt = conn.createStatement();

rs = stmt.executeQuery(sql);


// 제가 여기서 고생을 좀 했습니다. 큐브리드는 컬럼이 0이 아닌 1부터 시작하더군요..

while (rs.next()) {

Log.e("rs.getString(1)", "" + rs.getString(1));

}

} catch (Exception e) {

Log.e("s", e.getMessage());

}

}

}


xml에는 버튼 한개만 두엇습니다. ㅎ


Articles

1 2 3 4 5 6 7 8 9 10