0
내 DB 기반 앱에서 하나 이상의 필드 값이 하위 쿼리에서 오는 쿼리에 삽입을 수행해야합니다.안드로이드 SQLite 하위 쿼리에서 오는 값을 가진 테이블에 삽입
문에 삽입이 다음 예처럼 보일 수 있습니다 : 현재
INSERT INTO MyTable (field_1, field_2)
VALUES('value for field 1', (SELECT field_x FROM AnotherTable WHERE ...))
내가 그것을 수동으로 쿼리를 작성하고있는 중이 야 :
String MyQuery = "INSERT INTO mytable (field_1, field_2)
VALUES('value for field 1', (SELECT field_x FROM AnotherTable WHERE ...))"; // Of course my query is far more complex and is built in several steps but the concept is safe, I end up with a SQL String
SQLiteDatabase= db = getWritableDatabase();
db.execSQL(MyQuery); // And it works flawlessy as it was a Swiss Clock
것은 내가 대신 할 싶은 무엇이다 :
SQLiteDatabase db = getWritableDatabase();
ContentValues values = new ContentValues();
values.put("field_1", "value for field 1");
values.put("field_2", ThisIsAQuery("(SELECT field_x FROM AnotherTable WHERE ...)"));
db.insert("MyTable", null, values);
db.close();
가짜 방법 ThisIsAQuery (...)는 누락 된 부분입니다. hat은 "SELECT .."가 값이 아니라 insert 문에 임베드되어야하는 쿼리를 쿼리 작성자에게 알려야합니다.
이 방법이 있습니까?