Cannot Change Note Type

Anki Desktop Version ⁨2.1.49 running on Windows 10 does not allow me to change a note type. After selecting the new note type, I get the expected warning:
Warning
But when I click “Yes” I get this error box:
Result

Could you share some sample notes with both of the notetypes you’re using?

I have created an .apkg file with a sample of the cards, but I cannot attach it to this reply. Is there an email address I can send it to?

You can use some file-sharing service like https://gofile.io/

The sample file is at: gofile : /d/RbWyEs
FileShare

The cards are of two types: General Vocabulary (optional reverse)" and “General Vocabulary”. I am trying to convert the former to the latter.

How did you create the “General Vocabulary” notetype? It has a huge ID that I think is causing Anki to throw an error:

Normally, notetype IDs generated by Anki are timestamps in milliseconds, so the ID of this notetype doesn’t make sense here:

2 Likes

It has been awhile since I created it, but I expect I started with the Basic (and reverse card) and customized the fields and card layouts. I have used this collection for many years over a number of versions of Anki.

If it’s a useful clue, there are some note types in my collection with odd names (and no notes):
NoteTypes

I could try to create a new “General Vocabulary” note type from scratch using the process I described above if you think that would help.

I think this is unrelated: Note types with strange names - Frequently Asked Questions

Maybe this can help reveal something.


I tried this code to fix the ID, but it’s not working.

:warning: DO NOT run this code.

Code
now = int(time.time() * 1000)
mids = mw.col.db.list('select id from notetypes where id > ?', now)
for mid in mids:
    new_mid = int(time.time() * 1000)
    mw.col.db.execute('update notetypes set id = ? where id = ?', new_mid, mid)
    mw.col.db.execute('update notes set mid=? where mid = ?', new_mid, mid)
    mw.col.db.execute('update templates set ntid=? where ntid = ?', new_mid, mid)
mw.col.mod_schema(check=False)

I think I managed to fix the ID manually using SQLite Browser and converted the notes to “General Vocabulary”.
Try this deck: Gofile - Free file sharing and storage platform

2 Likes

I imported the file and the cards were imported into an automatically created an automatically created “General Vocabulary b-140b” Note type. I am able to successfully import notes from the “General Vocabulary (optional reversed card)” into this new Note Type.
But if I try the same operation on a card of the existing “General Vocabulary” note type, the “Change Notetype” popup box is completely blank.
My goal is to consolidate the entire deck into a single note type (the new one). And then I can delete the broken Note type.

What I probably need to do is: 1. Export all of the Notes of the broken note type to a plain text file, then delete all of them from my collection as well as the broken note type, then reimport them. Does that make sense? Do you have any other suggestion?

You will lose your progress on the cards, though.

Can you post the whole deck? I think I can fix the ID quickly and convert the notes to General Vocabulary.

I have posted the deck. There should be 3 types, “General Vocabulary-b140b” (the new one) “General Vocabulary (optional reversed card” and “General Vocabulary” (the broken one). The end state should be all notes in the “new” note type. Thank you for your help! Hereʻs the location:
LatinDeck

Try this: Gofile - Free file sharing and storage platform

3 Likes

Perfect! Thank you!!