ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • And_181120
    Android 2018. 11. 21. 17:34
    SQLite DB연결 

    깃허브 - 리눅스 git….(git 관련 명령어)

    adb를 사용한다.

    C:\Users\kgitbank

    alt 도구 폴더옵션 폴더옵션 숨긴파일 표시로 

    AppData를 보이게 한다 

    C:\Users\kgitbank\AppData\Local\Android\Sdk\platform-tools

    안에 adb.exe파일이 있다 

    sqlite3.exe파일이 있다 .

    win break

    고급 설정 -> 환경 변수 설정 

    시스템 변수 설정 path

    변수값에

    시스템 변수 추가  

    이름 ADB_HOME

    변수 값 C:\Users\kgitbank\AppData\Local\Android\Sdk\platform-tools 

    다시 cmd창에 adb를 치면 등록 됐음을 알 수 있다 

    ———————————————————————————————

    adb devices

    adb -e shell 

    ls 

    cd data

    ls

    cd data

    ls

    만든 이름으로 들어감  

    간단한 코드 

    adb -e shell

    cd /data/data/com.example.kgitbank.kakao

    cd databases

    sqlite3 kakao.db

    select * from member;

    중간 오류 해결

    near “$s”: syntax error (code 1)
    java code상 문제 -스프링 때 쓰던 습관으로 % 대신에 $를 사용함 

    다시 cmd에서 db내용을 sql 문으로 확인 할수 있다 

    Main.java의 

    코드 

    package com.example.kgitbank.kakao;

    import android.content.Context;
    import android.content.Intent;
    import android.database.sqlite.SQLiteDatabase;
    import android.database.sqlite.SQLiteOpenHelper;
    import android.support.v7.app.AppCompatActivity;
    import android.os.Bundle;
    import android.util.Log;
    import android.view.View;

    import java.util.List;

    public class Main extends AppCompatActivity {

       @Override
       protected void onCreate(Bundle savedInstanceState) {
           super.onCreate(savedInstanceState);
           setContentView(R.layout.main);
           final Context ctx = Main.this;

           findViewById(R.id.moveLogin).setOnClickListener(new View.OnClickListener() {
               @Override
               public void onClick(View v) {
                   SqliteHelper helper  = new SqliteHelper(ctx);
                   //helper라는 객체를 만드는 것은
                   //곧 SQLite DB를 만드는 것이다.
                   startActivity(new Intent(ctx,Login.class));

               }
           });

       }
       static interface ExcuteService{//재활용이 유용하기에 static으로 선언
           public void perform();
       }
       static interface ListService{
           public List<?> perform();
       }
       static interface OjectService{
           public Object perform();
       }
       static abstract class QueryFactory{
           Context ctx;

           public QueryFactory(Context ctx) {
               this.ctx = ctx;

           }
           public  abstract SQLiteDatabase getDatabase();
       }
       static class SqliteHelper extends SQLiteOpenHelper{

           public SqliteHelper(Context context) {
               super(context, DBInfo.DBNAME, null, 1);
               this.getWritableDatabase();
           }

           @Override
           public void onCreate(SQLiteDatabase db) {//객체가 만들어지면 작동
               String sql = String.format(
                               " CREATE TABLE IF NOT EXISTS %s " +
                               " ( %s INTEGER PRIMARY KEY AUTOINCREMENT," +
                               " %s TEXT," +
                               " %s TEXT," +
                               " %s TEXT," +
                               " %s TEXT," +
                               " %s TEXT," +
                               " %s TEXT " +
                               " ) ",
                       DBInfo.MBR_TABLE,
                       DBInfo.MBR_SEQ,
                       DBInfo.MBR_NAME,
                       DBInfo.MBR_EMAIL,
                       DBInfo.MBR_PASS,
                       DBInfo.MBR_ADDR,
                       DBInfo.MBR_PHONE,
                       DBInfo.MBR_PHOTO
               );
               Log.d("실행할 쿼리 ::",sql);
               db.execSQL(sql);
               Log.d("==================","쿼리 실행");
               String[] names = {"강동원","윤아","암수정","박보검","송중기"};
               String [] email ={"kang@naver.com","yun@naver.com","lim@gmail.com","park@gamail.com","song@gamil.com"
               };
               String [] addr ={"강동구","강서구","중구","서대문구","종로구"};
               for(int i =0 ; i<names.length;i++){
                Log.d("입력할 이름 ::",names[i]);
                db.execSQL(String.format(
                        " INSERT INTO %s " +
                                " ( %s," +
                                "  %s," +
                                "  %s," +
                                "  %s," +
                                "  %s," +
                                "  %s " +
                                ")VALUES( " +
                                " '%s'," +
                                " '%s'," +
                                " '%s'," +
                                " '%s'," +
                                " '%s'," +
                                " '%s' " +
                                ")",
                        DBInfo.MBR_TABLE, DBInfo.MBR_NAME, DBInfo.MBR_EMAIL, DBInfo.MBR_PASS,
                        DBInfo.MBR_ADDR, DBInfo.MBR_PHONE, DBInfo.MBR_PHOTO,
                        names[i],email[i],'1',addr[i],"010-1234-567"+i,"PHOTO_"+i
                ));
               }
               Log.d("**********************************","친구등록완료");

           }
           
           @Override
           public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
                db.execSQL("DROP TABLE IF EXISTS "+DBInfo.MBR_TABLE);
                onCreate(db);
           }
       }
    }


    'Android' 카테고리의 다른 글

    안드로이드 기기연결  (0) 2018.11.26
    and_181122  (0) 2018.11.22
    and_181121  (0) 2018.11.21
    SQLiteDatabase 클래스  (0) 2018.11.21
    Android_Layout종류  (0) 2018.11.20
Designed by Tistory.