mysql:15115
From: 岩崎 誠司 <岩崎 誠司 <iwasaki_ryuqseed_6130@xxxxxxxxxx>>
Date: Thu, 24 Dec 2009 15:54:15 +0900 (JST)
Subject: [mysql 15115] バイナリデータの取り込みについて
皆様 お世話になります。 質問です。 今、私はファイルのバイナリデータをMySQLに取り込みたいと 思い悪戦苦闘しおります。 LAN上でMySQL経由でバイナリファイルを共有したいと思い VS2008 C++でアプリを組み、アプリ内でクエリを発行して データをinsertしたいのですがうまくいきません。 皆様のお知恵を拝借願えないでしょうか? コードはこんな感じです。 FILE *pStream; CString sPath1("G:\\file1.***"); // 読込元のファイル CString sPath2("G:\\file2.***"); // 保存先のファイル CString Sql; // Sqlクエリ CString sSqlData; // MySQLからselectで取り出したデータ char pD[100000]; // ファイルの読み書き用 // ファイルの取得(読込モード) fopen_s(&pStream, sPath1, "rb"); int n = fread(pD, sizeof(char), sizeof(pD), pStream); fclose(pStream); // クエリの作成 Sql.Format(_T( "INSERT INTO eudc (id, eudc_data, count) " "VALUES (0, '%s', n)" ), cData, n); // Sqlクエリの発行 // MySQLからのバイナリデータを取得 // char への変換 pD == ""; strcpy(pD, sSqlData); // ファイルへの書き込み fopen_s(&pStream, sPath2, "wb"); fwrite(pD, sizeof(char), n, pStream); fclose(pStream); freadでは、ちゃんと取得できてるようですが、 pDの先頭がNULLみたいでCStringに変換できません。 (%sのところにバイナリデータが入らない。) ちなみにテキストファイルの場合は、これで問題ないです。 又、pDを触らずにそのまま別のファイルに書き込んでも 大丈夫みたいです。 使用環境 OS Windows Vista Ultimate SP2 開発ツール VS2008 C++ MySQL Ver5.1 以上、初歩的なことかもしれませんが、 よろしくお願いします。 -------------------------------------- Get Disney character's mail address on Yahoo! Mail http://pr.mail.yahoo.co.jp/disney/
15105 2009-12-14 19:00 [Honda Takayuki <hond] レプリケーションエラー(server id was not set) 15106 2009-12-14 20:26 ┗[Honda Takayuki <hond] -> 15115 2009-12-24 15:54 ┗[岩崎 誠司 <iwasaki_] バイナリデータの取り込みについて 15116 2009-12-24 16:01 ┣[<y-iida@xxxxxxxxxx> ] 15117 2009-12-24 16:25 ┣[岩崎 誠司 <iwasaki_] 15118 2009-12-24 17:17 ┃┗["Eigo Mori" <eigom@x] 15121 2009-12-24 19:45 ┣[Yoshiaki Yanagimoto ] 15122 2009-12-25 01:59 ┗[ちさ <admin@xxxxxxxx] 15123 2009-12-25 12:18 ┗[岩崎 誠司 <iwasaki_]