2つのデータベースへの接続を持つMicrosoft Accessプロジェクトで作業しています.1つはAzureでホストされているSQL Serverで、もう1つはLinuxサーバーでホストされているMySqlです。2Dbに接続されたMS Access
私のフォームでは、MySQLからAzureサーバーにデータをインポートしようとしています。
Iが正常にデータベースに接続し、自分のデータベース
From MySql /Linux ---- INTO ----> Azure/SQL
両方手動でクエリを通って自分のコードを介して挿入に値を挿入しました。私のフォーム上の私のコードは基本的にはSQLのクエリを実行してMySQLのテーブルからSQL Serverデータベースを選択します。
宛先テーブルに一意の識別子(guid)である主キーがあります。もちろんこれはnullにはなりません。これをテストするには、SQL insert文を使ってテーブルにレコードを手動で挿入しました。これがうまく動作したので、ボタンのクリックイベントによって同じクエリがテストされたことをテストしました。どの作品。別のテーブルからレコードをインポートし、デフォルトでguidを作成します。しかし、さらにテストすると、私は空のテーブルを使って作業していたときに、別のテーブルに正常にインポートできないことに気づきました。アクセスはボタンクリックでクエリを実行しますが、レコードが転送されないことを警告します。
私の質問はなぜですか?空のテーブルに新しいレコードを正しく挿入するために欠けているものは何ですか?それは既存のレコードを持つテーブルでしか動作しないようです。
これは本当に正確な設定とそのクエリが何をしているかによって異なります。私は誰もがこの情報をより詳細な情報なしで答えられるとは思わない。 –
"空のテーブルを使って作業しても、別のテーブルに正常にインポートできない"と混乱している。もちろん、テーブルが空の場合、別のテーブルにインポートするレコードはありません。次に、「空のテーブルに新しいレコードを挿入する」と言う。したがって、空のインポート先テーブルはインポートに失敗しますか?それは奇妙です。ポストクエリーと分析のためのコード。 – June7
ああ、私はそれを正しくフレーズしませんでした。私は空のテーブルに新しいレコードを挿入しようとしています。クエリのサンプルバージョンは次のようになります。INSERT INTO destTable(DateEntered、FirstName、LastName) SELECT sourceTable.DateCreated、sourceTable.FirstName、sourceTable.LastName sourceTable、destTable –