| |||||||
Das Thema "[Erledigt] Datenbank-Select mit Datumabfrage - abhängig von Sprache?" befindet sich unter Android App Entwicklung auf Android-Hilfe.de.
|
| | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| Erfahrener Benutzer Modell: Galaxy S i9100 Registriert seit: 14.05.2010
Beiträge: 278
Abgegebene Danke: 9
Erhielt 5 Danke für 5 Beiträge
| ich habe einen Newsreader entwickelt und speichere alle News in einer Datenbank. Die News selektiere ich z.B. mit dieser Funktion aus der Datenbank: Code: public List<Article> getArticleListNew() throws SQLException {
DateFormat df = new SimpleDateFormat("dd.MM.yyyy");
String d = df.format(new Date());
List<Article> articleList = new ArrayList<Article>();
Cursor c;
c = mDatabase.query(T_ARTICLE_NAME,
COLUMNS_ARTICLE,
T_ARTICLE_SDATE + "='" + d + "'",
// T_ARTICLE_SDATE + "=strftime(\"%d.%m.%Y\",'now','localtime')",
null, null, null,
T_ARTICLE_STIME + " desc");
c.moveToFirst();
if (!c.isAfterLast()) {
do {
Article article = new Article();
article = getArticleValues(c);
articleList.add(article);
} while (c.moveToNext());
}
c.close();
return articleList;
} Code: SELECT articleid, headline, headlineshort, subheadline, abstracttext, url, urlmob, metaurl, author, date, stime, sdate, images, leadimgurl, leadimgwidth, leadimgheight, text, fav, read, top, headlinefull FROM article WHERE sdate='21.05.2011' ORDER BY stime desc Einen Fehlerbericht gibt es nicht, da kein Fehler im Sinne von FC entsteht. Nun konnte ich das Problem schon lokalisieren. Es liegt anscheinend an dem Query ... Aber wieso?? Ich habe keine sprachenspezifische Attribute eingebaut ... Ist euch auch schon einmal dieses "Phänomen" aufgefallen? Kennt jemand eine plausible Erklärung bzw. Lösung? Vielen Dank, Grüße Edit: Auf meinem SGS2 (Android 2.3.3) konnte ich das Phänomen nicht reproduzieren!! Im Emulator (Android 2.2) aber schon ... EDIT: Hat sich erledigt!! Das lag gar nicht an dem Select, sondern beim Einfügen der News in die Datenbank habe ich ein Datum (ohne Datumsformat) mitgegeben ..... Beim Ändern der Sprache war das Datum beim Einfügen in die DB "MM dd yyyy" ... Meine Abfrage hatte aber das Datum "dd mm yyyy". Da kann ja nichts produktives herauskommen . Ich habe jetzt beim Einfügen auch ein Datumsformat und siehe daaa! es funktioniert.
Geändert von MetBo (21.05.2011 um 11:40 Uhr) |
| | |
| | #2 (permalink) |
| Android Experte Registriert seit: 24.01.2011
Beiträge: 637
Abgegebene Danke: 5
Erhielt 572 Danke für 228 Beiträge
|
Die richtige[TM] Lösung wäre allerdings, die Zeit nicht als String, sondern als Timestamp zu speichern. Dann hättest du solche Probleme nicht und könntest jegliches Datumsformat oder auch andere Zeitzonen ohne Aufwand unterstützen.
|
| | |
![]() |
|
| Themen-Optionen | |
| Ansicht | |
| |
| ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| Tastaturlayout abhängig von app | rambus | Individualisierung | 0 | 08.05.2011 15:09 |
| [Erledigt] neues Froyo Rom in Datenbank! | PLANTA | Root / Hacking / Modding für Motorola Defy | 5 | 02.05.2011 21:13 |
| [Erledigt] Sprache scheint auf Ungarisch eingestellt zu sein - wie Umstellen? | marioaw | Samsung Galaxy S (I9000) Forum | 7 | 16.03.2011 19:36 |
| I/O Ergebniss mit Data2sd extrem von sdcard abhängig? | djkroko | HTC Desire Forum | 8 | 09.03.2011 19:46 |
| Akkuverbrauch abhängig von Aufenthaltsort? | novander | HTC Desire Forum | 8 | 15.07.2010 14:24 |