A good primary key is crucial.
For my hub-and-spoke system, I was going to use post titles to keep track of all the details of posts spread across 40 domains.
Based on my experience with dBase IV back in the day, a long character string felt like a bad idea.
It would work at first, but after two or three posts on each of my domains I would have a hundred post titles to look through to find one I needed to edit. Many would be similar, so I would have to read carefully; an error-prone, time – wasting chore.
Airtable “primary keys” are not strictly primary keys!
The first column in an Airtable database is always a “primary key”. It might be more correct to call it a “primary field”. You want a field that is as close to unique for each record in the table as possible. Unlike the Primary Key in a strict database sense, Airtable primary fields can be case-insensitive.
This is a feature, not a bug, because it facilitates linking/matching fields without requiring 100% accurate typing. If most of the matches work, duplicates will be obvious and easy to correct.
Doing things this way makes your database easier to work with and quickly find what you need.
If your use case absolutely requires each record to have a unique primary key, then a system-generated record number is available.
Primary Field best practice
Use a formula field that combines two fields in each record to create a key you can be sure in unique.
My hub and spoke system will have forty domains, and each post will be published on only a single domain.
I will create unique keys by combining a short abbreviation of each domain name with two or three keywords from the post title. I can be confident that the combination will be unique.
For example, the abbreviation for RunningCat could be Cat. The title slug could be primary-key-creation. Using an Airtable function to combine these two fields yields Cat_primary-key-creation. This will make a unique primary key that tells me exactly where to look for that post if I want to edit it.
It will also let me quickly scan a list of posts to search for cross-linking opportunities.
Efficient editing into a WordPress post
When the text of my post is entered in the WordPress editor, it helpfully shows the proposed slug it created from my post title. Here it shows “airtable-insights-primary-key-creation”.
I think I can get the uniqueness I want while still avoiding duplicate records using only “primary-key-creation”.
I now have what I need to enter into my Airtable database of all my posts across all domains.