2016-07-30 16 views
-1

Ich erstelle eine Android-Anwendung, wo Tabellen dynamisch mit E-Mail (zum Beispiel: [email protected]) als Tabellenname erstellt werden. Später erfuhr ich, dass Tabellennamen keine Sonderzeichen wie "@" haben können.
Bitte schlagen Sie mir eine Möglichkeit vor, wie ich Tabellen mit Sonderzeichen wie "@" und "." im Tabellennamen.Sonderzeichen in Tabellenname in SQLite-Datenbank

+0

Ist dies [tag: sqlite] oder [tag: mysql]? Es ist derzeit mit beiden Tags. – Mureinik

+1

Ich bin nicht sicher, warum Sie denken, dass eine Tabelle pro E-Mail-Adresse die geeignete Lösung ist. Auch wenn dies der Fall ist, verwenden Sie einen unterstützten Tabellennamen (sequenziell oder zufällig generiert) und verfügen über eine Tabelle, die E-Mail-Adressen Tabellennamen zuordnet. – CommonsWare

+0

@Mureinik: Seine SQLite. Hast du eine Lösung für das Problem? –

Antwort

0

See this

Basierend auf obigen Link, U kann es

`

um die E-Mail-Adresse tun. aber wie es gesagt wird, ist es wirklich schlechte Praxis.

1

Dies ist zu lang für einen Kommentar. Die kurze Antwort lautet, dass SQLite sowohl doppelte Anführungszeichen als auch eckige Klammern für die Maskierung von Bezeichnern unterstützt.

Die richtige Antwort ist jedoch, dass ich mir nicht vorstellen kann, warum eine separate Tabelle für jede E-Mail erstellt werden würde. Eine E-Mail-Adresse ist normalerweise ein Attribut einer Entität und daher eine Spalte. Selbst wenn eine E-Mail-Adresse eine Entität selbst darstellt, dann möchten Sie mehrere E-Mails in einer einzigen Tabelle mit der E-Mail als Primärschlüssel speichern.

Wenn Sie aus bestimmten Gründen für einzelne Benutzer temporäre Tabellen benötigen, verwenden Sie .