オンラインのMySqlデータベースをローカルのSqliteデータベースに保存しようとしています。私がしていることは、MySQLからデータテーブル全体のデータを取得してから、データテーブルからSqliteに保存しようとすることです。そこで、私はMySqlのデータをすべて "Console.printLine"を介して最初に数えることを確かめました。オンラインMySqlDatabaseからDataTableへの不完全なデータ
SELECT COUNT(REFENCE)
を使用してMySqlのPhpMyAdminのデータをカウントすると、83,335行がカウントされますが、Console.WriteLineではインクリメント+1を使用して、最大3,857行しか取得できません。私が得ていることが不完全であると私に信じさせました。私が間違っている場所を教えてくれますか?場合は、オンラインMySqlの "テーブル"のデータをコピーするより良い方法は、Sqliteのテーブルには素晴らしいだろう。ありがとうございました。
private void buttonX1_Click(object sender, EventArgs e)
{
const string sql1 =
@"SELECT reference, DATE(trx_date) as 'date', chassis_nmbr, status, remarks,
approved_by, DATE(date_approved), branch_code FROM jobcomp_hdr;";
var table = new DataTable("onlineData");
using (var conn = new DwoAccess().ConnectToMySql())
{
using (var cmd = new MySqlCommand(sql1, conn))
{
try
{
cmd.CommandTimeout = 60;
var adapt = new MySqlDataAdapter(cmd);
conn.Open();
adapt.Fill(table);
}
catch (Exception ex)
{
//ignore
}
}
}
var x=0;
foreach (DataRow row in table.Rows)
{
Console.WriteLine(row["reference"].ToString());
x += 1;
}
Console.WriteLine(x.ToString());
}
詳細を見つけますか? 'Console.Clear()'を使うことができます。 Debug.WriteLine( "text"); 'デバッグモードでプログラムを実行すると、出力ウィンドウにメッセージが表示されます –
私のポイントは実際には何がコンソールに書き込まれているのか分かりませんが、コンソール。 3,857のみ表示されますが、私のオンラインデータベースのデータは83,335です。これは83,335のうち3,857だけが「データテーブル」にダウンロードされたことを意味します。 – Ibanez1408
例外はありますか? –