【问题标题】:How to get sql lite datas in andorid?如何在android中获取sqlite数据库?
【发布时间】:2015-03-16 07:07:54
【问题描述】:

在这段代码中,我必须将 sqlite 数据插入 SQL server。首先,我必须将所有数据存储在 sqlite 数据库中,然后单击一个按钮,整个数据应该插入 SQL server。我的问题是第一行只插入所有行。例如;如果我在 Sqlite 中插入了三个不同的行,但是这三行在 Sql server 中具有相同的第一行值.... 如何解决。我正在使用移动到第一个和移动到下一个......但我无法得到。 伙计们,我需要你的帮助

// 数据库编码

public class Database extends SQLiteOpenHelper {
    static int dbversion=1;
    static String dbname="auction.db";
    String TABLE_CONTACTS = "auctions";
    public Database(Context context)
             {
        super(context, dbname, null, dbversion);
        // TODO Auto-generated constructor stub
    }

    @Override
    public void onCreate(SQLiteDatabase db) {

        db.execSQL("create table Auction(boname VARCHAR NOT NULL,bname VARCHAR NOT NULL, amount VARCHAR NOT NULL,daty DATE)");


}

    @Override
    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
        // TODO Auto-generated method stub

    }
}

// JAva编码

public void onClick(View v) {
            // TODO Auto-generated method stub


            Database db=new Database(MainActivity.this);
            SQLiteDatabase sb=db.getReadableDatabase();


            Cursor cus=sb.rawQuery("select * from Auction",null);
            cus.moveToFirst();


             for(int i=0;i<cus.getCount();i++)
             {


             String Boatnum= cus.getString(0).toString();
             String Buyername=cus.getString(1).toString();

             String amount=     cus.getString(2).toString();




                        request.addProperty("Boatnum",Boatnum);
                        request.addProperty("Buyername",Buyername);
                        request.addProperty("amount",amount);


                                    envelope=new SoapSerializationEnvelope(SoapEnvelope.VER11);
                                    envelope.dotNet=true;
                                    envelope.setOutputSoapObject(request);

                                    httpTransport = new HttpTransportSE(SOAP_ADDRESS);





                                    try {

                                         serviceCall();



                                    } 


                                    catch (Exception exception) {


                                        //Toast.makeText(getActivity(), "Registered Successfully", Toast.LENGTH_LONG).show();



              }
                                cus.moveToNext(); 


             }              


         }

【问题讨论】:

  • 能否请您发布您的数据库架构?
  • 在表格的开头输入这样的 id 并检查:UID INTEGER PRIMARY KEY AUTOINCREMENT,
  • 如果我给自动增量,它会显示所有的数据啊..
  • 如果您的查询是正确的,它将...
  • 还是有同样的问题

标签: android sql sqlite insert


【解决方案1】:

您能否评论您当前的代码并尝试以下代码:

Cursor cus=sb.rawQuery("select * from Auction",null);
            if (cus != null) { 
            cus.moveToFirst();
    }

评论每一件事,并在你的方法中只包含这些,并尝试让我知道会发生什么。

【讨论】:

  • 感谢您的回复....但是同样的问题发生了,使用此代码在该方法中没有任何反应
  • 您确定要插入数据吗?
  • 没有错误...但仍然保存相同的问题...实际上,如果我在 sqllite 表中插入三个数据,它将显示报告 Pakka ..但是在 sql server 中使用soap Web服务插入三个数据已显示,但都具有我在第一行中插入的相同值。
  • 表示 db 没有问题,它与您的肥皂网络服务有关。
  • 感谢您的帮助...我会尝试
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-03-15
  • 2018-01-30
  • 2016-05-08
  • 2014-06-30
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多