카테고리 없음

[기계적 인조 인간] SQLITE로 로그인 페이지 생성

행복을전해요 2021. 3. 2. 04:54

데이터베이스를 여러 번 만들고 있습니다. 데이터베이스 생성을 SQLiteOpenHelper 클래스로 이동하고 사용하려는 활동에서 인스턴스를 생성하기 만하면됩니다.

-------------------

이것에서 당신은 테이블 열을 변경하여 데이터베이스 버전을 1에서 2로 변경했다는 실수를 저질렀습니다.해야 할 일은 SQLiteOpenHelper 클래스 파일에 있습니다.

public void onUpgrade(SQLiteDatabase _db, int _oldVersion, int _newVersion) 
{
        Log.w("TaskDBAdapter", "Upgrading from version " +_oldVersion + " to " +_newVersion + ", which will destroy all old data");
        
                _db.execSQL("ALTER TABLE login ADD COLUMN EMAIL varchar(16)");
                
                        onCreate(_db);
                        }
                        

Alter Table Query에서 Email은 새로 추가 된 열입니다. sqlite 관리자를 사용하여 데이터베이스보기를 만듭니다.

-------------------

//MainActivity.java

public class MainActivity extends ActionBarActivity {
Button btlogin,btacc;
EditText emailid,passwd;
SQLiteDatabase db=null;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
            btlogin=(Button)findViewById(R.id.button1);
                btacc=(Button)findViewById(R.id.button2);
                    emailid=(EditText)findViewById(R.id.editText1);
                        passwd=(EditText)findViewById(R.id.editText2);
                            db=openOrCreateDatabase("mydb", MODE_PRIVATE, null);
                                btacc.setOnClickListener(new OnClickListener() {
                                
                                        @Override
                                                public void onClick(View arg0) {
                                                            // TODO Auto-generated method stub
                                                                        Intent in=new Intent(MainActivity.this,Signin.class);
                                                                                    startActivity(in);
                                                                                            }
                                                                                                });
                                                                                                    btlogin.setOnClickListener(new OnClickListener() {
                                                                                                    
                                                                                                            @Override
                                                                                                                    public void onClick(View arg0) {
                                                                                                                    
                                                                                                                                // TODO Auto-generated method stub
                                                                                                                                            String mail_id=emailid.getText().toString();
                                                                                                                                                        String password=passwd.getText().toString();
                                                                                                                                                                    if(mail_id==null||mail_id==""||mail_id.length()<10)
                                                                                                                                                                                {
                                                                                                                                                                                                show("Please Enter Correct mail id.");
                                                                                                                                                                                                            }
                                                                                                                                                                                                                        else if(password==null||password==""||password.length()<6)
                                                                                                                                                                                                                                    {
                                                                                                                                                                                                                                                    show("Please Enter Correct Password.");
                                                                                                                                                                                                                                                                }
                                                                                                                                                                                                                                                                            else
                                                                                                                                                                                                                                                                                        {       
                                                                                                                                                                                                                                                                                                        Cursor c=db.rawQuery("select * from login where email_id='"+mail_id+"' and password='"+password+"'",null);  
                                                                                                                                                                                                                                                                                                                        c.moveToFirst();
                                                                                                                                                                                                                                                                                                                                        if(c.getCount()>0)
                                                                                                                                                                                                                                                                                                                                                        {
                                                                                                                                                                                                                                                                                                                                                                        Intent i=new Intent(MainActivity.this,Show.class);
                                                                                                                                                                                                                                                                                                                                                                                        i.putExtra("name",mail_id );
                                                                                                                                                                                                                                                                                                                                                                                                        startActivityForResult(i,500);
                                                                                                                                                                                                                                                                                                                                                                                                        
                                                                                                                                                                                                                                                                                                                                                                                                                        db.close();
                                                                                                                                                                                                                                                                                                                                                                                                                                        finish();
                                                                                                                                                                                                                                                                                                                                                                                                                                                        }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                        else
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            show("Wrong Password or Email Id.");
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        private void show(String string) {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    // TODO Auto-generated method stub
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                Toast.makeText(getApplicationContext(), string, Toast.LENGTH_LONG).show();
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            });
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    

}

//Signin.java 클래스

public class Signin extends Activity {
EditText ename,eemail,emobile,enewpwd,erepwd;
Button bok;
SQLiteDatabase db=null;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
        setContentView(R.layout.signin);
            ename=(EditText)findViewById(R.id.editText1);
                eemail=(EditText)findViewById(R.id.editText2);
                    emobile=(EditText)findViewById(R.id.editText3);
                        enewpwd=(EditText)findViewById(R.id.editText4);
                            erepwd=(EditText)findViewById(R.id.editText5);
                                bok=(Button)findViewById(R.id.button1);
                                    db=openOrCreateDatabase("mydb", MODE_PRIVATE, null);
                                        db.execSQL("create table if not exists login(name varchar,email_id varchar,mobile_no varchar,password varchar,repassword varchar)");
                                        
                                            bok.setOnClickListener(new OnClickListener() {
                                            
                                                    @Override
                                                            public void onClick(View arg0) {
                                                                        // TODO Auto-generated method stub
                                                                                    String name=ename.getText().toString();
                                                                                                String email_id=eemail.getText().toString();
                                                                                                            String mobile_no=emobile.getText().toString();
                                                                                                                        String password=enewpwd.getText().toString();
                                                                                                                                    String repassword=erepwd.getText().toString();
                                                                                                                                                if(name==null||name==""||name.length()<3)
                                                                                                                                                            {
                                                                                                                                                                            show("Please Enter Correct Name.");
                                                                                                                                                                                        }
                                                                                                                                                                                                    else if(mobile_no==null||mobile_no==""||mobile_no.length()<10)
                                                                                                                                                                                                                {
                                                                                                                                                                                                                                show("Please Enter Correct mobile number.");
                                                                                                                                                                                                                                            }
                                                                                                                                                                                                                                                        else if(email_id==null||email_id==""||email_id.length()<10)
                                                                                                                                                                                                                                                                    {
                                                                                                                                                                                                                                                                                    show("Please Enter Correct Email id.");
                                                                                                                                                                                                                                                                                                }
                                                                                                                                                                                                                                                                                                            else if(password==null||password==""||password.length()<6)
                                                                                                                                                                                                                                                                                                                        {
                                                                                                                                                                                                                                                                                                                                        show("Please Enter Strong Password.");
                                                                                                                                                                                                                                                                                                                                                    }
                                                                                                                                                                                                                                                                                                                                                                else if(repassword==null||repassword=="")
                                                                                                                                                                                                                                                                                                                                                                            {
                                                                                                                                                                                                                                                                                                                                                                                            show("password mismatch.");
                                                                                                                                                                                                                                                                                                                                                                                                        }
                                                                                                                                                                                                                                                                                                                                                                                                                    else
                                                                                                                                                                                                                                                                                                                                                                                                                                {
                                                                                                                                                                                                                                                                                                                                                                                                                                                db.execSQL("insert into login values('"+name+"','"+email_id+"','"+mobile_no+"','"+password+"','"+repassword+"')");
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                Intent in=new Intent(Signin.this,Show.class);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                in.putExtra("name", email_id);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            startActivity(in);
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        db.close();
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    finish();
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        private void show(String str) {
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    // TODO Auto-generated method stub
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                Toast.makeText(getApplicationContext(), str, Toast.LENGTH_LONG).show();
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            });
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            }
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            

} //show.java 클래스

public class Show extends Activity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
        setContentView(R.layout.show);
            Intent intent = getIntent();
               String n = intent.getStringExtra("name");
                   TextView t=(TextView)findViewById(R.id.textView2);
                       String nn;
                           String[] separated = n.split("@");
                               nn=separated[0]; 
                                   //separated[1]; 
                                       t.setText(nn);
                                       
                                       
                                       }
                                       

}



출처
https://stackoverflow.com/questions/22089840