2012-03-19 52 views
1

私は、EditTextでタイプされたデータがjavaファイルのボタンをクリックすると変数に入り、その値がsqliteデータベースに格納されるログインアプリケーションを作成しています。私は作成しましたが、EditTextに値を入力してボタンをクリックすると、ファイルエクスプローラにデータベースが作成されませんでした。私はAndroid上で新しいですファイルエクスプローラdo notは任意のデータベースを表示します

import java.util.Locale; 
import android.app.Activity; 
import android.content.ContentValues; 
import android.database.sqlite.SQLiteDatabase; 
import android.os.Bundle; 
import android.view.View; 
import android.view.View.OnClickListener; 
import android.widget.Button; 
import android.widget.EditText; 
import android.widget.Toast; 

public class AAAActivity extends Activity { 
    /** Called when the activity is first created. */ 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 

     EditText userid = (EditText)findViewById(R.id.et_un); 
     EditText password = (EditText)findViewById(R.id.et_pw); 
     final String uid; 
     final String pwd; 

     uid = userid.getText().toString(); 
     pwd = password.getText().toString(); 

     Button btn = (Button)findViewById(R.id.btn_login); 
     btn.setOnClickListener(new OnClickListener(){ 
     @Override 
     public void onClick(View v) { 
      // TODO Auto-generated method stub 
      InsertUser(uid, pwd); 
      show();     
      } 
      }); 

    }  

    public void InsertUser(String user_name, String password){ 
     //SQLiteDatabase db; 
     SQLiteDatabase db; 
     db = openOrCreateDatabase("TestData.db", SQLiteDatabase.CREATE_IF_NECESSARY, 
       null); 

     try{ 

      db.setVersion(1); 
      db.setLocale(Locale.getDefault()); 
      db.setLockingEnabled(true); 
      /*final String CREATE_TABLE_USERS = "CREATE TABLE users (" + "id INTEGER 
        PRIMARY KEY AUTOINCREMENT,"+" LoginName text not null, Password 
            text not null);"; */   
      String CREATE_TABLE_USERS = "CREATE TABLE users (" + "id INTEGER PRIMARY KEY 
       AUTOINCREMENT,"+" LoginName text not null, Password text not null);"; 

     db.execSQL(CREATE_TABLE_USERS); 

     ContentValues values = new ContentValues(); 
     values.put("LoginName", user_name); 
     values.put("Password", password); 
     db.insert("users", null, values); 
      } 
     catch(Exception e){ 
      } 
     } 
    public void show(){ 

    Toast toast=Toast.makeText(this, "your data is received", Toast.LENGTH_SHORT); 
    toast.show();  
    }  
    } 

は、ここに私のコードです。どのようなヘルプがありがとうございます。

+0

ファイルエクスプローラのスクリーンショットをアップロードして、パッケージ内にデータベースフォルダを表示できますか? –

+0

あなたのメールアドレスを送ってください。Shashank .... – Ashu

+0

私は最終的な文字列uidと思います。最終的なストリングpsw。値を収集しないでください....... – Ashu

答えて

0

私はオープン、クローズ、更新挿入およびリトリーブのデータのように、クラスの異なる機能用に新しいDBAdapterクラスを作成しました。次に、ボタンのクリックイベントでDBAdapterクラスのメソッドを呼び出すレイアウトリソースにアクセスする別のクラスを作成しました。

私のコードの前のポストで、私はデータベースにデータを挿入するたびに新しいデータベースを作成し、それが問題を作成すると思います。今私はすべてのメソッドを分離し、個別に呼び出す。

関連する問題