0

私のアプリでは、ATTACH DATABASE を使用して 2 つのデータベースを「マージ」し、それらで作業しました。それは完全に機能します。2 つのデータベース ファイルのテーブルに対する SELECT / UPDATE / INSERT は問題ありません。

私の質問: CREATE TABLE を実行するときに使用するデータベース ファイルを指定するにはどうすればよいですか?

CREATE TABLE caps (
    id VARCHAR PRIMARY KEY NOT NULL,
    name_en VARCHAR,
    status INTEGER DEFAULT (1))

編集:2番目のデータベースを次のように接続しました:

self.database = [FMDatabase databaseWithPath:DATABASE_READ_SANDBOX_PATH]; 
[self.database executeUpdate:[NSString
    stringWithFormat:@"ATTACH DATABASE '%@' AS db2",
    DATABASE_USER_SANDBOX_PATH]];

2 番目のデータベースには名前 ( db2) がありますが、最初のデータベースは? そして、最初にテーブルを追加したいと思います。

4

1 に答える 1

2

ドキュメントには次のように記載されています。

アタッチされたデータベース内のテーブルは、構文database-name.table-nameを使用して参照できます。
データベース名 ' main' および ' temp' は、メイン データベースと一時テーブルに使用されるデータベースを参照します。

したがって:

CREATE TABLE main.caps(...)
CREATE TABLE db2.caps(...)
于 2012-09-23T11:50:43.797 に答える