私のアプリケーションには、いくつかの外部キーと内部結合クエリを持つ 3 つの Sqlite テーブルがあります。
すべてのテーブルと列の名前を保存する DatabaseSqlHelper クラスを作成しました。
テーブルを作成するためにこの行を使用しようとしました
Create Table If Not Exists Users(
Users.User_Id Varchar(50) Primary Key Not Null,
Users.Name Varchar(50) Not Null,
Users.First_Name Varchar(50),
Users.Profile_Picture Blob);
私はこれをmySqlでテストしており、問題はありませんが、Androidで実行すると次のようになります:
09-09 17:58:30.350: E/Database(12973): Failure 1 (near ".": syntax error) on 0x1cf850 when preparing 'Create Table If Not Exists Users(Users.User_Id Varchar(50) Primary Key Not Null,Users.Name Varchar(50) Not Null,Users.First_Name Varchar(50),Users.Profile_Picture Blob);'.
私が TableName.ColumnName を使用している理由は、そのように文字列で名前を保存したためです。後で内部結合で、Users.Id = TableName.Id で内部結合 TableName を実行する方が簡単です。
それを修正する方法はありますか?