Access文本字段上的唯一索引是否始终不区分大小写?

dum*_*uch 4 delphi indexing ms-access

我使用以下代码创建了MS Access表:

  tbl := Database.CreateTableDef('English', 0, '', '');
  try
    fld := tbl.CreateField('ID', dbLong, 0);
    fld.Attributes := dbAutoIncrField + dbFixedField;
    tbl.Fields.Append(fld);

    fld := tbl.CreateField('Content', dbText, 255);
    fld.Required := true;
    fld.AllowZeroLength := false;
    tbl.Fields.Append(fld);

    Database.TableDefs.Append(tbl);

    idx := tbl.CreateIndex('PrimaryKey');
    idx.Fields.Append(idx.CreateField('ID', EmptyParam, EmptyParam));
    idx.Primary := True;
    idx.Unique := true;
    tbl.Indexes.Append(idx);

    idx := tbl.CreateIndex('IX_Content');
    idx.Fields.Append(idx.CreateField('Content', EmptyParam, EmptyParam));
    idx.Primary := false;
    idx.Unique := true;
    tbl.Indexes.Append(idx);
  finally
    tbl := nil;
  end;
Run Code Online (Sandbox Code Playgroud)

这工作正常,直到我尝试将两个字符串'字段类型'和'字段类型'插入此表.我收到一个错误,告诉我唯一的索引限制我这样做.正如您所看到的,它们仅在第二个单词的情况下有所不同.由于我没有明确地使索引不敏感(我甚至不知道如何做),我不太明白为什么会发生这种情况.文本字段中的索引在MS Access中是否始终不区分大小写?如果没有,我做错了什么?

Joh*_*nFx 5

Access Jet数据库从根本上不区分大小写.那是你的问题.据我所知,没有办法使Access索引区分大小写.