Android 我需要知道连接(创建和插入)查询是否正确
语境Android 我需要知道连接(创建和插入)查询是否正确,android,sqlite,Android,Sqlite,语境 public myDatabase(Context c) { super(c,DBNAME,null,VERSION); context = c; } @Override public void onCreate(SQLiteDatabase db) { try { // String query ="CREATE TABLE"+ TABLENAME+"("+ID+"INTEGER PRIMARY KEY AUROINCREMENT,"+USERNA
public myDatabase(Context c)
{
super(c,DBNAME,null,VERSION);
context = c;
}
@Override
public void onCreate(SQLiteDatabase db) {
try {
// String query ="CREATE TABLE"+ TABLENAME+"("+ID+"INTEGER PRIMARY KEY AUROINCREMENT,"+USERNAME+"TEXT,"+PASSWORD+"TEXT,"+EMAILID+"TEXT,"+MOBILE+"INTEGER"+")";
// String query= "create table Register (id integer primary key, username text,password text,emailid text, mblno integer)";
String query= "create table"+"Register"+"("+"+id+"+"integer primary key autoincrement,"+"username text,password text);";
db.execSQL(query);
Toast.makeText(context, "Table Created", Toast.LENGTH_SHORT).show();
}catch (Exception e){
Log.e("ERR",""+e);
}
还要检查插入代码
String username=user.getText().toString().trim();
String password=pass.getText().toString().trim();
String emailid=email.getText().toString().trim();
String mobile=mbl.getText().toString().trim();
String idnum=idno.getText().toString().trim();
int id=Integer.parseInt(idnum);
int mblno=Integer.parseInt(mobile);
myDatabase mdb=new myDatabase(add.this);
SQLiteDatabase db=mdb.getWritableDatabase();
try {
String query2="insert into Register values("+id+",'"+username+"','"+password+"','"+emailid+"',"+mblno+")";
// String query2 ="INSERT INTO "+TABLENAME+"(id,username,password,emailid,mblno)"+ " VALUES ("+id+ ","+username+ ","+password+","+emailid+","+mblno+")";
db.execSQL(query2);
db.close();
Toast.makeText(getApplicationContext(), "User Inserted", Toast.LENGTH_SHORT).show();
idno.setText("");
user.setText("");
pass.setText("");
email.setText("");
mbl.setText("");
}catch (Exception e){
Log.e("ERR2",""+e);
}
您的查询语法有一些错误 更换这条线
String query= "create table"+"Register"+"("+"+id+"+"integer primary key autoincrement,"+"username text,password text);";
到
还有一些错误,比如插入
如果您完全清楚,我认为您的所有问题都会得到解决。回答这个问题:它们不是,您的代码通过捕获异常忽略了问题。此外,它还容易受到sql注入的攻击。
String query = "CREATE TABLE " + "Register" + " (" + "id" + " INTEGER PRIMARY KEY AUTOINCREMENT, " + "username" + " TEXT, " + "password" + " TEXT, " + "emailid" + " TEXT, " + "mblno" + " TEXT)";