Sponsored By
















 

 

데이터베이스를 만들고 테이블을 만들어서 데이터를 DB에 추가 하는 방법이다.

 

 

 

 

 

이어지는 코드는 링크 참조:

 

 

 

 

 

 

 

 

 

00. 아래와 같이 만든다. 아래 Text탭을 눌러서 코드를 확인해보자.







01. 코드는 아래와같다.

<?xml version="1.0" encoding="utf-8"?>

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"

    xmlns:tools="http://schemas.android.com/tools"

    android:layout_width="match_parent"

    android:layout_height="match_parent"

    android:paddingBottom="@dimen/activity_vertical_margin"

    android:paddingLeft="@dimen/activity_horizontal_margin"

    android:paddingRight="@dimen/activity_horizontal_margin"

    android:paddingTop="@dimen/activity_vertical_margin"

    tools:context="com.example.joey.mydbdb.MainActivity">

    <EditText

        android:id="@+id/editText"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:layout_alignParentLeft="true"

        android:layout_alignParentStart="true"

        android:layout_toLeftOf="@+id/button01"

        android:text="customer.db" />

    <Button

        android:id="@+id/button01"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:layout_alignBottom="@+id/editText"

        android:layout_alignParentEnd="true"

        android:layout_alignParentRight="true"

        android:onClick="button01"

        android:text="데이터베이스열기" />

    <EditText

        android:id="@+id/editText02"

        android:layout_width="match_parent"

        android:layout_height="wrap_content"

        android:layout_alignBottom="@+id/button02"

        android:layout_alignParentLeft="true"

        android:layout_alignParentStart="true"

        android:layout_toLeftOf="@+id/button02"

        android:text="customer" />

    <Button

        android:id="@+id/button02"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:layout_alignParentEnd="true"

        android:layout_alignParentRight="true"

        android:layout_below="@+id/button01"

        android:onClick="button02"

        android:text="테이블만들기" />

    <Button

        android:id="@+id/button03"

        android:layout_below="@+id/button02"

        android:layout_width="match_parent"

        android:layout_height="wrap_content"

        android:onClick="button03"

        android:text="데이터추가하기" />

    <ScrollView

        android:layout_width="match_parent"

        android:layout_height="wrap_content"

        android:layout_alignParentBottom="true"

        android:layout_below="@+id/button03"

        android:id="@+id/scrollView">

        <TextView

            android:id="@+id/textView"

            android:layout_width="match_parent"

            android:layout_height="match_parent"

            android:background="#ffaaffee"

            android:layout_alignTop="@+id/scrollView"

            android:layout_alignParentLeft="true"

            android:layout_alignParentStart="true" />

    </ScrollView>

</RelativeLayout>







02. 메인자바Script로 이동해서 코드를 추가하자.

package com.example.joey.mydbdb;

import android.content.Context;

import android.database.sqlite.SQLiteDatabase;

import android.os.Bundle;

import android.support.v7.app.AppCompatActivity;

import android.view.View;

import android.widget.EditText;

import android.widget.TextView;

public class MainActivity extends AppCompatActivity {

    EditText editText;

    EditText editText2;

    TextView textView;

    String databaseName;

    SQLiteDatabase database;

    String tableName;

    @Override

    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_main);

        editText = (EditText) findViewById(R.id.editText);

        editText2 = (EditText) findViewById(R.id.editText02);

        textView = (TextView) findViewById(R.id.textView);

    }

    public void button01(View v) {

        databaseName = editText.getText().toString();

        try {

            database = openOrCreateDatabase(databaseName, Context.MODE_PRIVATE, null);

            println("데이터베이스를 열었습니다. :" + databaseName);

        } catch (Exception e) {

            e.printStackTrace();

        }

    }

    public void button02(View v) {

        tableName = editText2.getText().toString();

        try {

            if (database != null) {  //database가 null 값이면 수행

                database.execSQL("CREATE TABLE if not exists " + tableName + "(" // 존재하지 않을때 생성하라

                        + "_id integer PRIMARY KEY autoincrement,"

                        + "name text, "

                        + "age integer, "

                        + "mobile text "

                        + ")");

                println("테이블을 만들었습니다. : " + tableName);

            } else {

                println("데이터베이스를 먼저 열어야 합니다.");

            }

        } catch (Exception e) {

            e.printStackTrace();

        }

    }

    public void button03(View v) {

        try {

            if (tableName == null) {  //tableName이 null 값이면 수행

                tableName = editText2.getText().toString();

            }

            if (database != null) {

                database.execSQL("INSERT INTO " + tableName + "(name, age, mobile) VALUES"

                        + "('김사과', 20, '010-1234-5678')");

                println("데이터를 추가했습니다. ");

            } else {

                println("데이터베이스를 먼저 열어야 합니다.");

            }

        } catch (Exception e) {

            e.printStackTrace();

        }

    }

    private void println(String data) {

        textView.append(data + "\n");

    }

}







03. 실행시켜본다.







04. 테이블만들기 버튼을 먼저 눌러본다.







05. 텍스트가 뜨는것을 확인하고 데이터베이스열기 버튼을 누른다.







06. 텍스트가 뜨는것을 확인하고(DB를 열고) 테이블만들기를 눌른다.







07. 테이블이 만들어짐을 확인하고 데이터추가하기 버튼을 클릭해서 DB에 데이터를 추가하자.







08. 정상작동됨을 확인 할 수 있다.

 



Sponsored By















+ Recent posts