0

データベースのバックエンド MS Access 2003 を MySQL 5.1 にアップグレードしました。現在、バックエンドの MYSQL 5.1 データベースを ODBC (MySQL ODBC 5.1 Driver) 経由で ODBC を使用して MS Access にリンクしています。

インデックス、主キーの関係/制約などを設定すると、ほとんどすべての機能が正常に機能しました。

ただし、バックエンドのアップグレード前に MS Access バージョンで編集可能だった以下のクエリは、編集できなくなりました。

結合タイプは Left/Inner/Right Join で、結合のフィールドは varchar データ型です。

SELECT tblebayinvoices.[User Id], tblebayinvoices.[Buyer Full name], tblebayinvoices.  
[Buyer Phone Number],  tblstock.stcEBayDescr, tblstock.stcEBayActive
FROM tblebayinvoices LEFT JOIN tblstock ON tblebayinvoices.[Item Title] = 
tblstock.stcEBayDescr;

私の観察では、フィールドのデータ型が数値である他のクエリがありますが、それらは問題なく、クエリはまだ編集可能です。この同じクエリは、バックエンドが MS Access の場合に編集可能でした。

必要な提案や変更を教えてください。

4

2 に答える 2

1

「stcEBayDescr」に一意のキーを作成すると、問題が解決しました。MS Access には存在したが、MySQL テーブルのデータベースには作成されていない一意のキー インデックスがありませんでした。これで、クエリは MS Access で編集可能になりました (MySQL ODBC を通じて MySQL リンク テーブルを使用します)。

于 2013-10-02T08:08:15.350 に答える
1

結合されたフィールドが主キーであるようには見えません。これらのフィールドはテキストであり、典型的な主キー フィールドではないように見えるため、これを想定しています。

メイン テーブルの主キーから子テーブルの外部キーへの結合が行われる場合にのみ、結合は編集可能になります。

于 2013-09-27T14:02:07.227 に答える