2010-03-31 3 views
1

Это, вероятно, просто, но когда я создаю новый объект, свойство ID начинается с 0, а не с нуля. Насколько я понимаю, SQLite принимает/нуждается в значении null для столбца PK для выполнения AutoIncrement.AutoIncrement в SQLite с Subsonic 3

Итак, короткий вопрос: как получить идентификатор в объекте, чтобы начать жизнь как нуль?

Благодаря Cooter

+0

Что произойдет, если вы звоните .save() на новом объекте? Соответствует ли свойство/поле в объекте, соответствующем столбцу PK, автоматически увеличивающееся значение? Что делать, если вы установили свойство PK в значение null до того, как вы вызовете .Save()? – sparks

+0

Если я вызываю .Save() и уже есть запись с идентификатором 0, то я получаю исключение из-за необходимости использования уникальных значений. Я не могу установить столбец в null, поскольку это свойство, и вы не можете установить int для null – Cooter

ответ

1

Хорошо, вот что решение кажется. После того, как вы создадите таблицы с помощью PK, откройте таблицу, щелкните правой кнопкой мыши по левой колонке слева, где находится ключевой образ, и вы можете редактировать клавиши/отношения. На этом экране свойств вы можете установить столбец для автоматического увеличения.

Я также следовал совету на this page.

Все это делается с использованием самых превосходных инструментов от sqlite.phxsoftware.com/

-Cooter