2017-06-28 3 views
0

私は現在問題が発生している問題/問題(Sorting error in one field of Report)がありました。リレーションシップリンクを再確立

Boat_Owner - (ボートテーブルの番号フィールド)とOwner_ID - (所有者テーブルのプライマリキーのオートナンバー)フィールドを使用して、以前は関係で結合された2つのテーブル(オーナーとボート)があります。問題のため、ボートテーブルの番号フィールドのデータ型が数値から短いテキストに変更されました。

これで、関係はもう機能しなくなりました。その結果、「データ型の不一致」というエラーが発生します。

両方のテーブルには完全なテーブルがあります。ボートは355のユニークなエントリを持ち、テーブル所有者は295のユニークなエントリを持ち、所有者の一部は複数のボートを所有しています。 Autonumber IDは両方のテーブルで元のままです。例えば、Boat 401が所有者33との所有権を検出したことがわかります。残念ながら、前述のフィールドデータタイプの問題のためにテーブル関係を再確立する方法を理解できません。

追加クエリを実行して、ボートテーブルにowner_IDフィールドを数値フィールドとして再設定できると思っています。

この時点から、私は手動でowner_IDをすべて入力します。望ましいものから295ものあるから遠い。私は1つのスプレッドシート上で2つのテーブルを一致させるためにExcelを使用していますが、誰かがより良い手順を持っている場合は、提案に公開しています。

私の考えでは、2つのテーブル間の関係を再確立できると思っています。

私はこれについて最善の方法をとっているのかどうか、これが正しい方法であるかどうかは分かりません。

誰かが入力している場合は、私は提案に開放されています。何かがあれば、進捗状況を投稿します。

+0

Boat_Ownerを番号に戻すことができないのはなぜですか? – Andre

+0

これは良い質問ですが、私はあなたに答えがありません。試行が不足しているわけではありませんが、試してみるたびに、各フィールドに空白が表示され、手動で各フィールドに記入することに戻ります。 – DHPA

+0

さて、現在のテキスト列には正確に何が含まれていますか? – Andre

答えて

0

現在、列にはテキスト形式の名前が含まれています。

その後、あなたは次の操作を行うことができます:Owner_ID数、長整数:

Boatsの新しい列を作成します。

は、その後、所有者名を使って参加するからUPDATEクエリでこのコラムを埋める:

UPDATE Boats INNER JOIN Owners 
    ON Boats.Boat_Owner = Owners.Owner_Name 
SET Boats.Owner_ID = Owners.Owner_ID 

重複した名前(ジョン・スミス)がある場合は、間違っているの割り当てがあるでしょう、あなたはこれらを修正する必要があります手動で

すべてのOwner_IDが正しく割り当てられている場合、新しい1:nの関係を作成できます。現在はOwners.Owner_IDからBoats.Owner_IDまでです。

その後、Boats.Boat_Owner列を削除する必要がありますが、現在は使用できません。

+0

私はこれを試して、あなたに知らせるでしょう。入力いただきありがとうございます。 – DHPA

+0

もう一度入力していただきありがとうございます。解決策はうまくいきましたが、私はまだ新しいインプットについての問題に遭遇しています。フォームを使用して所有者名などの情報を入力すると、フォーム上にテキストとして表示されます。テーブルを見ると、テキストは割り当てられた番号IDに変換されます。おそらくややこしいかもしれませんが、新しいエントリーがテキストの代わりに数字であるという点で、テーブルが奇妙に見えるようにします。私はこれがテーブルの間に設定された関係と関係している可能性があると思う。数字の代わりに表として表示する方法を教えてください。 – DHPA

関連する問題