2011-07-19 10 views
0

私は、leaves stru2mysql.prgとvfp2mysql_upload.prgを使用してDBFから.sqlダンプファイルを作成しました。私はODBCを使用してvfpからmysqlデータベースに接続します。私はSQLダンプファイルをアップロードする方法を知っていますが、ダンプファイルを作成した後、つまりサードパーティーなしで(自動的に)ダンプファイルをアップロードできます。私は、ソースコマンドを使用すると思ったが、それはmysqlのプロンプトで実行する必要があります。ここでの仮定は、私のエンドユーザーがどのようにインポートする(それらのほとんどはいけない)知られていません。どのように私はSQLファイルのインポートを自動化することができますmysql database.thank youビジュアルfoxproを使用してmysqlにデータベースをダンプする

答えて

0

私はあなたが探しているものは、FoxproのさまざまなSQL *関数だと思います。 SQLCONNECT(またはSQLSTRINGCONNECT)、SQLEXEC、およびSQLDISCONNECTのVFPヘルプまたはMSDNを参照してください。マイクロソフトはドキュメントのそれぞれの良い例を提供しています。

を使用して、Leafeのプログラムの出力をSQLEXEC関数の文字列にすることもできます。

0

ここでは、Visual FoxProデータベースからデータを取得し、MySqlデータベースにアップロードする手順を示します。これらはすべて、コマンドボタンによって起動されるフォーム上のカスタムメソッドに入れられます。たとえば、メソッドは 'uploadnewdata'となり、必要なデータテーブルのパラメータを渡します。

1)サーバーに接続 - MySql ODBC を使用します。2)ユーザーを検証します(SQLEXECを使用して、 m.WorkingDatabase < IFユーザーテーブル のレコード> -1 nRetVal = SQLEXEC(m.WorkingDatabase、 "ユーザーがSELECT * FROM"、 "csrUsersOnServer")

SELECT csrUsersOnServer 
SELECT userid,FROM csrUsersOnServer; 
WHERE ALLTRIM(UPPER(userid))=ALLTRIM(UPPER(lcRanchUser)); 
AND ALLTRIM(UPPER(lcPassWord))=ALLTRIM(UPPER(lchPassWord)); 
INTO CURSOR ValidUsers 
IF _TALLY>=1 
    ELSE 
=MESSAGEBOX("Your Premise ID Does Not Match Any Records On The Server","System Message") 
RETURN 0 
ENDIF 
ELSE 
=MESSAGEBOX("Unable To Connect To Your Database", "System Message") 
RETURN 0 
ENDIF 

3)それが成功したら、私は自分を作成ベースカーソル(これは私が送信しているもの) 4)私はそのカーソルをループして、 ds 5)SQLEXECとINSERT INTOを使用して、各レコードを更新します。 6)プログラムがカーソルの処理を終了すると、メッセージボックスに「finished」メッセージが生成され、コントロールがフォームに戻ります。

すべてのユーザーは、開始表を選択し、ログイン情報を入力してください

関連する問題