마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

android에서 MSSQL 쿼리 값 출력하

0 추천
package com.example.mssql;

import androidx.appcompat.app.AppCompatActivity;

import android.os.Bundle;
import android.util.Log;
import android.widget.Toast;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;

public class MainActivity extends AppCompatActivity {

    static String query = "select top 1 seq from stock order by seq desc " ;
    ResultSet reset = null;
    Connection conn = null;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);


        try {
            Class.forName("net.sourceforge.jtds.jdbc.Driver");
            conn = DriverManager.getConnection("jdbc:jtds:sqlserver:" +
                    "//***.***.***.***:11433;databaseName=Result",
                    "*****","*******");
            Statement stmt = conn.createStatement();

            reset = stmt.executeQuery(query);

            Toast myToast = Toast.makeText(this.getApplicationContext(),
                    "reset.getString(1)", Toast.LENGTH_SHORT);
            myToast.show();


            conn.close();
        }

        catch (Exception e)
        {
            Log.w("111Error connection", "123" + e.getMessage());
        }
    }
인터넷에 소스를 가져와 Listview로 출력하면 정상적으로 출력이 됩니다.
그런데 특정 쿼리 값을 받아서 변수에 담아 Toast에 출력되는지 테스트하는데
빈 값만 나와요 안드로이드는 처음이라 어떻게 해야 할지 답변좀 주세요
고재원 (120 포인트) 님이 2023년 1월 19일 질문

1개의 답변

0 추천
"reset.getString(1)" // 단순 문자열

가 아니라

reset.getString(1)

로 사용하셔야 하는거 아닌가요?
spark (224,800 포인트) 님이 2023년 1월 19일 답변
reset.getString(1) 네 이게 맞는데 DB에서 값이 가져오지 못하는것 같아
그냥 문자로 찍어본거에요??
그런데 문자도 안 찍혀요 try 문 자체가 실행이 되는지도 모르겠어요
모발일에서 서버용 데이터베이스를 직접 엑세스하는 건 일반적이지 않기 때문에, 정확히는 모르겠으나, Statement 예제들을 보면 reset.next()를 통해 레코드에 접근하는 것으로 보이고, 모바일 앱의 경우 IO나 network 처리같은 경우는 UI을 얼어붙는 것을 방지하기 위해 기본적으로 background thread에서 실행하는 것이 좋습니다.
혹시 로그캣에서 관련 로그가 있는지 잘 살펴보시기 바랍니다. 분명히 힌트가 될 만한 부분이 있을 겁니다. 문제가 생길 때는 에러로그를 살피고 디버깅을 해보시는게 좋습니다.
...