sqlite: chave primária de várias colunas com uma coluna de incremento automático

Basicamente, quero converter uma tabela do mysql para sqlite com o seguinte esquema:

create table items (
id integer auto_increment,
version integer default 0,
primary key (id, version)
);

Essencialmente, quero que o ID seja incrementado automaticamente sempre que insiro algo na tabela, com VERSION começando em 0, mas ainda permitimos vários itens com o mesmo ID, desde que VERSION seja diferente.

No entanto, estou tentando replicar esse comportamento com o SQLite, mas não consigo fazer a criação da tabela funcionar. Parece que você só tem permissão para uma coluna como incremento automático e deve ser a chave primária. Se eu fizer do ID a chave primária, não posso usar VERSION como parte da chave. No entanto, se eu criar uma chave com várias colunas (ID, VERSION), não será possível obter o ID para aumentar automaticamente.

Existe uma solução alternativa ou talvez uma maneira melhor de projetar minha mesa?

Eu estava pensando na seguinte solução:

tabela 1:

create table items {
id integer primary autoincrement,
version integer}

Tabela 2:

create table item_version {
id integer,
version integer,
primary key (id, version)
}

Quando adiciono um novo item, adiciono-o aos itens e tenho o incremento automático de ID. no entanto, se eu tiver uma nova versão do mesmo ID, adicione-a ao item_version. Basicamente, eu uso item_version para armazenar tudo, exceto itens, apenas para gerar IDs únicos.

questionAnswers(1)

yourAnswerToTheQuestion