Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/233.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 我需要知道连接(创建和插入)查询是否正确_Android_Sqlite - Fatal编程技术网

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)";