2013-07-07 2 views
1

Я использую SQLite для работы в приложении Android. До сих пор я понял, что таблица, созданная в SQLite, требует столбца с именем _id. Так, например, создать таблицу, я использую следующий SQL заявление:Использование разных идентификаторов для нескольких таблиц в SQLITE

CREATE TABLE IF NOT EXISTS Semesters(
_id INTEGER PRIMARY KEY AUTOINCREMENT, 
semester_name TEXT, 
is_current TEXT 
GPA REAL); 

Однако теперь, если я хочу, чтобы создать отдельную таблицу в той же базе данных, что бы я назвать столбца первичного ключа? Например, это таблица, я хочу создать:

CREATE TABLE IF NOT EXISTS Classes(
_id INTEGER PRIMARY KEY AUTOINCREMENT, 
course_name TEXT); 

Теперь, как таблица семестров и таблица курсов есть столбец _id, и если я хочу, чтобы сделать внешний ключ ссылку на столбец _ID в в таблице семестров мне придется называть это именем таблицы. Есть ли способ сделать это проще, используя разные имена для идентификаторов?

Спасибо.

+0

Simpler чем что? Ваш вопрос непонятен. –

ответ

0

Например, вы делаете третью таблицу и вы хотите использовать как первичные ключи таблиц в качестве внешних ключей:

CREATE TABLE ClassSemester(
_id INTEGER PRIMARY KEY AUTOINCREMENT, 
semester_id INTEGER, 
class_id  INTEGER, 
FOREIGN KEY(semester_id) REFERENCES Semesters(_id), 
FOREIGN KEY(class_id) REFERENCES Classes(_id) 
); 

Более детально в здесь: http://www.sqlite.org/foreignkeys.html

Смежные вопросы