Да.Вы можете использовать текстовое поле в качестве первичного ключа:
CREATE TABLE myTable (uniqueText VARCHAR NOT NULL PRIMARY KEY, text VARCHAR)
Некоторые вставки:
INSERT INTO myTable (uniqueText, text) VALUES ('hello', 'world')
Результат: ОК.
Другая вставка:
INSERT INTO myTable (uniqueText, text) VALUES ('hello', 'world')
Результат: Ошибка - столбец uniqueText не является уникальным.