Thank you for both of your replies. I have tried implementing both of
your suggestions but neither has worked.
I've found another way to do it though and I've had some success
although displaying it as a listview seems to be really difficult.

This is what I've written...

package com.targetshooterapp;



public class DBAdapter extends ListActivity
{
        // These variables to be retrieved from the Intent Bundle

        /** Unique ID assigned to competitors once entering an event */
        int entryID;
        /** Unique identifier for shots */
        int shotID;
        /** Name of the event */
        String eventName="Tester";
        /** Event Date */
        String date="Date";
        /** Type of event */
        String eventType="Service Pistol";
        /** Number of rounds */
        int numRounds=1;
        /** Number of shots per round */
        int shotsPerRound=4;
        /** Name of user */
        String shooter="me";
        /** Distance from the target */
        String distance="100 yards";
        /** Total score at the end of the event*/
        int totalScore=10;
        /** x coordinate of user input on screen */
        float xCoord = (float) 345.675;
        /** y coordinate of user input on screen */
        float yCoord = (float) 345.675;
        /** Event table - String name */
        private final String EVENT_TABLE = "tbl_event";
        /** Shot table - String name */
        private final String SHOT_TABLE = "tbl_event";

        SQLiteDatabase db;
        public void onCreate(Bundle savedInstanceState)
        {
                super.onCreate(savedInstanceState);
                // Create Array List to store result
                ArrayList<String> result = new ArrayList<String>();
                try
                {
                        db = openOrCreateDatabase("shootnext.db",
SQLiteDatabase.CREATE_IF_NECESSARY, null);
                        // Set DB version, Locale and locking properties of the 
database
                        db.setVersion(1);
                        db.setLocale(Locale.getDefault());
                        db.setLockingEnabled(true);

                        /** SQL query to create the event table */
                        final String CREATE_TABLE_EVENT = "CREATE TABLE IF NOT 
EXISTS
tbl_event("
                                + "entryID INTEGER PRIMARY KEY , "
                        + "eventName TEXT,"
                        + "date TEXT,"
                        + "eventType TEXT,"
                        + "numRounds INTEGER,"
                        + "shotsPerRound, INTEGER"
                        + "shooter TEXT,"
                        + "distance TEXT,"
                        + "totalScore INTEGER);";

                        /** SQL query to create the shot table */
                        final String CREATE_TABLE_SHOT = "CREATE TABLE IF NOT
EXISTS tbl_shot("
                        + "shotID INTEGER PRIMARY KEY , "
                        + "entryID INTEGER,"
                        + "xCoord FLOAT,"
                        + "yCoord FLOAT,"
                        + "points INTEGER,"
                        + "shooter TEXT);";

                         // Create tables in the database
                         db.execSQL(CREATE_TABLE_EVENT);
                         db.execSQL(CREATE_TABLE_SHOT);

                         // SQL query to enter event details into database
                         String INSERT_INTO_EVENT = "INSERT INTO tbl_event 
VALUES"
                                 +"(5,'"
                                 + eventName
                                 +"','"
                                 + date
                                 +"','"
                                 + eventType
                                 +"','"
                                 + numRounds
                                 +"','"
                                 + shotsPerRound
                                 +"','"
                                 + shooter
                                 +"','"
                                 + distance
                                 +"','"
                                 + totalScore +"');";

                         String INSERT_INTO_SHOT = "INSERT INTO tbl_shot VALUES"
                                 +"(17,'"
                                 + 34 +"','"
                                 + xCoord +"','"
                                 + yCoord +"','"
                                 + totalScore +"','"
                                 + shooter +"');";

                         //db.execSQL(INSERT_INTO_EVENT);
                         //db.execSQL(INSERT_INTO_SHOT);

                         Cursor cursor = db.rawQuery("SELECT eventName,shooter" 
+
                                 " FROM " + EVENT_TABLE
                                 + " WHERE totalScore > 10 LIMIT 10",
                                 null);

                         if(cursor != null)
                         {
                                 if(cursor.moveToFirst())
                                 {
                                         do
                                         {
                                                 String eName =
cursor.getString(cursor.getColumnIndex("eventName"));
                                                 String sName =
cursor.getString(cursor.getColumnIndex("shooter"));
                                                 int tScore =
cursor.getInt(cursor.getColumnIndex("totalScore"));
                                                 //result.add("" + eName + "" + 
"Name: "+ sName + ",
Score: " + tScore);
                                                 result.add("" + eName + 
",Shooter: " + sName);
                                         }
                                         while(cursor.moveToNext());
                                 }
                         }

                         this.setListAdapter(new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_1, result));


                }
                catch(SQLiteException se)
                {
                        Log.e(getClass().getSimpleName(), "Can't get in!");
                }
                finally
                {
                        if(db != null)
                        {
                                db.execSQL("DELETE * FROM " + EVENT_TABLE);
                                db.execSQL("DELETE * FROM " + SHOT_TABLE);
                                db.close();
                        }
                }
        }
}


I have also posted the log output

I/ActivityManager(   67): Starting activity: Intent
{ cmp=com.targetshooterapp/.
History }
D/AndroidRuntime(  685): Shutting down VM
W/dalvikvm(  685): threadid=3: thread exiting with uncaught exception
(group=0x4
001aa28)
E/AndroidRuntime(  685): Uncaught handler: thread main exiting due to
uncaught e
xception
E/AndroidRuntime(  685): java.lang.RuntimeException: Unable to start
activity Co
mponentInfo{com.targetshooterapp/com.targetshooterapp.History}:
android.database
.sqlite.SQLiteException: no such column: shooter: , while compiling:
SELECT even
tName,shooter FROM tbl_event WHERE totalScore > 10 LIMIT 10
E/AndroidRuntime(  685):        at
android.app.ActivityThread.performLaunchActiv
ity(ActivityThread.java:2401)
E/AndroidRuntime(  685):        at
android.app.ActivityThread.handleLaunchActivi
ty(ActivityThread.java:2417)
E/AndroidRuntime(  685):        at android.app.ActivityThread.access
$2100(Activi
tyThread.java:116)
E/AndroidRuntime(  685):        at android.app.ActivityThread
$H.handleMessage(Ac
tivityThread.java:1794)
E/AndroidRuntime(  685):        at
android.os.Handler.dispatchMessage(Handler.ja
va:99)
E/AndroidRuntime(  685):        at android.os.Looper.loop(Looper.java:
123)
E/AndroidRuntime(  685):        at
android.app.ActivityThread.main(ActivityThrea
d.java:4203)
E/AndroidRuntime(  685):        at
java.lang.reflect.Method.invokeNative(Native
Method)
E/AndroidRuntime(  685):        at
java.lang.reflect.Method.invoke(Method.java:5
21)
E/AndroidRuntime(  685):        at com.android.internal.os.ZygoteInit
$MethodAndA
rgsCaller.run(ZygoteInit.java:791)
E/AndroidRuntime(  685):        at
com.android.internal.os.ZygoteInit.main(Zygot
eInit.java:549)
E/AndroidRuntime(  685):        at
dalvik.system.NativeStart.main(Native Method)

E/AndroidRuntime(  685): Caused by:
android.database.sqlite.SQLiteException: no
such column: shooter: , while compiling: SELECT eventName,shooter FROM
tbl_event
 WHERE totalScore > 10 LIMIT 10
E/AndroidRuntime(  685):        at
android.database.sqlite.SQLiteProgram.native_
compile(Native Method)
E/AndroidRuntime(  685):        at
android.database.sqlite.SQLiteProgram.compile
(SQLiteProgram.java:110)
E/AndroidRuntime(  685):        at
android.database.sqlite.SQLiteProgram.<init>(
SQLiteProgram.java:59)
E/AndroidRuntime(  685):        at
android.database.sqlite.SQLiteQuery.<init>(SQ
LiteQuery.java:49)
E/AndroidRuntime(  685):        at
android.database.sqlite.SQLiteDirectCursorDri
ver.query(SQLiteDirectCursorDriver.java:49)
E/AndroidRuntime(  685):        at
android.database.sqlite.SQLiteDatabase.rawQue
ryWithFactory(SQLiteDatabase.java:1118)
E/AndroidRuntime(  685):        at
android.database.sqlite.SQLiteDatabase.rawQue
ry(SQLiteDatabase.java:1092)
E/AndroidRuntime(  685):        at
com.targetshooterapp.History.onCreate(History
.java:121)
E/AndroidRuntime(  685):        at
android.app.Instrumentation.callActivityOnCre
ate(Instrumentation.java:1123)
E/AndroidRuntime(  685):        at
android.app.ActivityThread.performLaunchActiv

It says there is no such column: shooter: in the databsae, but there
is. I've added stuff to it and its fine.

Any ideas?

On Sep 1, 6:45 pm, Kostya Vasilyev <kmans...@gmail.com> wrote:
>   The "from" and "to" arrays need to have equal size, and contain values
> (column names and view ids) that are used for mapping data to UI elements.
>
> Your code seems to try and map a number of data column items into one
> text view.
>
> The fix is to add more elements to the item layout, and specify themin
> the "to" array, so each column in the "from" array is mapped to a view.
>
> To display two (or more) tables, you use something called a "table
> join". It's a standard SQL construct, Google for it.
>
> Finally, use logcat (in Eclipse or "adb logcat" on the host computer) to
> see more detailed information whenever your application crashes.
>
> Including the Java stack trace from logcat output with your questions is
> also useful, as it helps others understand what goes on in your application.
>
> -- Kostya
>
> 01.09.2010 20:26, kingh32 пишет:
>
> >           // Set the list adapter
> >           String[]from = {DBHelper.COL_ENTRYID,
> > DBHelper.COL_EVENTNAME,
> >                     DBHelper.COL_DATE, DBHelper.COL_EVENTTYPE,
> > DBHelper.COL_NUMROUNDS,
> >                            DBHelper.COL_PLAYSSPERROUND, 
> > DBHelper.COL_PLAYERS,
> > DBHelper.COL_DISTANCE,
> >                                    DBHelper.COL_TOTALSCORE};
>
> >           int[]to = {R.id.the name of my textview};
>
> >          // Put retrieved data into a list view
> >          SimpleCursorAdapter adapter = new SimpleCursorAdapter(this,
> > android.R.layout.simple_list_item_1, cursor, from, to);
>
> --
> Kostya Vasilyev -- WiFi Manager + pretty widget 
> --http://kmansoft.wordpress.com

-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to android-developers@googlegroups.com
To unsubscribe from this group, send email to
android-developers+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to