//数据库文件:存放用户账号、密码。public class MyDBHelper extends SQLiteOpenHelper { public static final String CREATE_USERDATA="create table userData(" +
"id integer primary key autoincrement,"
+"account,"
+"password)";
/* public static final String CREATE_STOCK="create table userData(" +
"id integer primary key autoincrement,"
+"type,"
+"price,"
+"number)";*/ private Context mContext; public MyDBHelper(Context context, String name, SQLiteDatabase.CursorFactory cursorFactory,int version){
super(context,name,cursorFactory,version);
mContext=context;
} public void onCreate(SQLiteDatabase db){
db.execSQL(CREATE_USERDATA);
} public void onUpgrade(SQLiteDatabase db,int oldVersion,int newVersion){
//onCreate(db);
}
}//登录界面
public class MainActivity extends Activity {
private MyDBHelper dbHelper;
private EditText username,password; @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.activity_main);
Button Register=(Button) findViewById (R.id.register);
Button Login=(Button) findViewById (R.id.login);
Button Forgive_pwd=(Button) findViewById (R.id.forgive_pwd);
dbHelper = new MyDBHelper(this,"UserStore.db",null,1);
Register.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
//点击注册按钮进入注册页面
//Toast.makeText(MainActivity.this, "fghjkhv", Toast.LENGTH_SHORT).show();
Intent intent = new Intent(MainActivity.this,RegisterAvtivity.class);
startActivity(intent);
}
}); //点击登录按钮
Login.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View v) {
username=(EditText)findViewById(R.id.et1);
password=(EditText)findViewById(R.id.et2);
String userName=username.getText().toString();
String passWord=password.getText().toString();
if (login(userName,passWord)) {
Intent intent = new Intent(MainActivity.this,ThirdActivity.class);
startActivity(intent);
}
else {
Toast.makeText(MainActivity.this, "登陆失败", Toast.LENGTH_SHORT).show();
}
}
});
}
//验证登录
public boolean login(String username,String password) {
SQLiteDatabase db = dbHelper.getWritableDatabase();
String sql = "select * from userData where account=? and password=?";
Cursor cursor = db.rawQuery(sql, new String[] {username, password});
if (cursor.moveToFirst()) {
cursor.close();
return true;
}
return false;
}
}//注册界面:public class RegisterAvtivity extends Activity { private MyDBHelper dbHelper;
public EditText Et3,Et4; @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_register); dbHelper = new MyDBHelper(this,"UserStore.db",null,1);
Button createDatabase = (Button) findViewById(R.id.login);
createDatabase.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
SQLiteDatabase db = dbHelper.getWritableDatabase(); //获取SQLiteDatabase对象
ContentValues values = new ContentValues(); //用ContentValues对要添加的数据组装
// 开始组装数据
String newname = Et3.getText().toString();
String password= Et4.getText().toString();
if (CheckIsDataAlreadyInDBorNot(newname))
{
Toast.makeText(RegisterAvtivity.this,"该用户名已被注册,注册失败",Toast.LENGTH_SHORT).show();
}
else {
String sql = "insert into userData(account,password) value(?,?)";
Object obj[]={newname,password};
db.execSQL(sql,obj);
values.put("account", newname); //列名和要添加的数据,id列已设置为自动添加,可以自动生成
values.put("password", password);
db.insert("userData",null,values); // 插入第一条数据
db.close();
Toast.makeText(RegisterAvtivity.this, "注册成功", Toast.LENGTH_SHORT).show();
}
}
});
}
//检验用户名是否已存在
public boolean CheckIsDataAlreadyInDBorNot(String value){
SQLiteDatabase db=dbHelper.getWritableDatabase();
String Query = "Select * from userData where account =?";
Cursor cursor = db.rawQuery(Query,new String[] { value });
if (cursor.getCount()>0){
cursor.close();
return true;
}
cursor.close();
return false;
}
}
[/code]
"id integer primary key autoincrement,"
+"account,"
+"password)";
/* public static final String CREATE_STOCK="create table userData(" +
"id integer primary key autoincrement,"
+"type,"
+"price,"
+"number)";*/ private Context mContext; public MyDBHelper(Context context, String name, SQLiteDatabase.CursorFactory cursorFactory,int version){
super(context,name,cursorFactory,version);
mContext=context;
} public void onCreate(SQLiteDatabase db){
db.execSQL(CREATE_USERDATA);
} public void onUpgrade(SQLiteDatabase db,int oldVersion,int newVersion){
//onCreate(db);
}
}//登录界面
public class MainActivity extends Activity {
private MyDBHelper dbHelper;
private EditText username,password; @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.activity_main);
Button Register=(Button) findViewById (R.id.register);
Button Login=(Button) findViewById (R.id.login);
Button Forgive_pwd=(Button) findViewById (R.id.forgive_pwd);
dbHelper = new MyDBHelper(this,"UserStore.db",null,1);
Register.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
//点击注册按钮进入注册页面
//Toast.makeText(MainActivity.this, "fghjkhv", Toast.LENGTH_SHORT).show();
Intent intent = new Intent(MainActivity.this,RegisterAvtivity.class);
startActivity(intent);
}
}); //点击登录按钮
Login.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View v) {
username=(EditText)findViewById(R.id.et1);
password=(EditText)findViewById(R.id.et2);
String userName=username.getText().toString();
String passWord=password.getText().toString();
if (login(userName,passWord)) {
Intent intent = new Intent(MainActivity.this,ThirdActivity.class);
startActivity(intent);
}
else {
Toast.makeText(MainActivity.this, "登陆失败", Toast.LENGTH_SHORT).show();
}
}
});
}
//验证登录
public boolean login(String username,String password) {
SQLiteDatabase db = dbHelper.getWritableDatabase();
String sql = "select * from userData where account=? and password=?";
Cursor cursor = db.rawQuery(sql, new String[] {username, password});
if (cursor.moveToFirst()) {
cursor.close();
return true;
}
return false;
}
}//注册界面:public class RegisterAvtivity extends Activity { private MyDBHelper dbHelper;
public EditText Et3,Et4; @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_register); dbHelper = new MyDBHelper(this,"UserStore.db",null,1);
Button createDatabase = (Button) findViewById(R.id.login);
createDatabase.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
SQLiteDatabase db = dbHelper.getWritableDatabase(); //获取SQLiteDatabase对象
ContentValues values = new ContentValues(); //用ContentValues对要添加的数据组装
// 开始组装数据
String newname = Et3.getText().toString();
String password= Et4.getText().toString();
if (CheckIsDataAlreadyInDBorNot(newname))
{
Toast.makeText(RegisterAvtivity.this,"该用户名已被注册,注册失败",Toast.LENGTH_SHORT).show();
}
else {
String sql = "insert into userData(account,password) value(?,?)";
Object obj[]={newname,password};
db.execSQL(sql,obj);
values.put("account", newname); //列名和要添加的数据,id列已设置为自动添加,可以自动生成
values.put("password", password);
db.insert("userData",null,values); // 插入第一条数据
db.close();
Toast.makeText(RegisterAvtivity.this, "注册成功", Toast.LENGTH_SHORT).show();
}
}
});
}
//检验用户名是否已存在
public boolean CheckIsDataAlreadyInDBorNot(String value){
SQLiteDatabase db=dbHelper.getWritableDatabase();
String Query = "Select * from userData where account =?";
Cursor cursor = db.rawQuery(Query,new String[] { value });
if (cursor.getCount()>0){
cursor.close();
return true;
}
cursor.close();
return false;
}
}
[/code]
解决方案 »
- helloworld程序在模拟器可以运行,到真机上提示无法解析,什么原因呢,版本吗
- tabhost里子tab跳转还保持tabhost问题
- 设置默认Intent.action.view 的打开程序
- 哪位高人能告诉我android利用ndk开发音频应用时,如何读取音频源文件的?
- “应用程序未安装”问题,在线等
- 刚写个用于摇晃检测的类,自己试试还行
- 新手学andriod求指导
- 动态添加控件~~向大神们求助
- 急~啊!opengl 灯光 法线???
- 使用sqlite报SQLiteReadOnlyDatabaseException异常
- android 如何实现图片旋转指定度数(0-360)
- Android WindowManager.addView中的布局能用Fragment切换界面吗?
"id integer primary key autoincrement,"
+"account,"
+"password)";你建表的时候不给account,password这两个字段指定类型的么举个例子:
// 创建表,自增_id,频率,增益
@Override
public void onCreate(SQLiteDatabase db) {// 初次生成数据库时才会被调用
db.execSQL("CREATE TABLE IF NOT EXISTS " + table_name
+ " (" // 创建详细信息数据库表
+ "_id integer primary key autoincrement,"
+ "start TEXT,end TEXT" + ");"); }
我的start,end 这两个字段是TEXT类型的 ,_id 和你的一样是integer 类型的