1f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Projectpackage SQLite; 2f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project 3f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Projectimport java.util.Vector; 4f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project 5f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project/** 6f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * Class representing an SQLite result set as 7f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * returned by the 8f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * <A HREF="Database.html#get_table(java.lang.String)">Database.get_table</A> 9f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * convenience method. 10f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * <BR><BR> 11f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * Example:<BR> 12f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * 13f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * <PRE> 14f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * ... 15f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * SQLite.Database db = new SQLite.Database(); 16f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * db.open("db", 0); 17f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * System.out.print(db.get_table("select * from TEST")); 18f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * ... 19f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * </PRE> 20f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * Example output:<BR> 21f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * 22f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * <PRE> 23f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * id|firstname|lastname| 24f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * 0|John|Doe| 25f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * 1|Speedy|Gonzales| 26f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * ... 27f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * </PRE> 28f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project */ 29f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project 30f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Projectpublic class TableResult implements Callback { 31f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project 32f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project /** 33f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * Number of columns in the result set. 34f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project */ 35f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project 36f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project public int ncolumns; 37f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project 38f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project /** 39f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * Number of rows in the result set. 40f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project */ 41f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project 42f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project public int nrows; 43f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project 44f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project /** 45f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * Column names of the result set. 46f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project */ 47f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project 48f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project public String column[]; 49f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project 50f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project /** 51f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * Types of columns of the result set or null. 52f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project */ 53f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project 54f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project public String types[]; 55f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project 56f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project /** 57f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * Rows of the result set. Each row is stored as a String array. 58f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project */ 59f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project 60f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project public Vector rows; 61f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project 62f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project /** 63f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * Create an empty result set. 64f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project */ 65f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project 66f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project public TableResult() { 67f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project clear(); 68f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project } 69f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project 70f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project /** 71f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * Clear result set. 72f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project */ 73f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project 74f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project public void clear() { 75f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project column = new String[0]; 76f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project types = null; 77f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project rows = new Vector(); 78f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project ncolumns = nrows = 0; 79f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project } 80f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project 81f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project /** 82f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * Callback method used while the query is executed. 83f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project */ 84f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project 85f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project public void columns(String coldata[]) { 86f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project column = coldata; 87f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project ncolumns = column.length; 88f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project } 89f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project 90f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project /** 91f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * Callback method used while the query is executed. 92f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project */ 93f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project 94f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project public void types(String types[]) { 95f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project this.types = types; 96f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project } 97f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project 98f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project /** 99f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * Callback method used while the query is executed. 100f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project */ 101f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project 102f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project public boolean newrow(String rowdata[]) { 103f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project if (rowdata != null) { 104f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project rows.addElement(rowdata); 105f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project nrows++; 106f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project } 107f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project return false; 108f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project } 109f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project 110f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project /** 111f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project * Make String representation of result set. 112f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project */ 113f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project 114f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project public String toString() { 115f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project StringBuffer sb = new StringBuffer(); 116f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project int i; 117f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project for (i = 0; i < ncolumns; i++) { 118f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project sb.append(column[i] == null ? "NULL" : column[i]); 119f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project sb.append('|'); 120f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project } 121f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project sb.append('\n'); 122f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project for (i = 0; i < nrows; i++) { 123f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project int k; 124f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project String row[] = (String[]) rows.elementAt(i); 125f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project for (k = 0; k < ncolumns; k++) { 126f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project sb.append(row[k] == null ? "NULL" : row[k]); 127f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project sb.append('|'); 128f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project } 129f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project sb.append('\n'); 130f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project } 131f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project return sb.toString(); 132f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project } 133f6c387128427e121477c1b32ad35cdcaa5101ba3The Android Open Source Project} 134