2013-04-27 37 views
0

從MySQL的查詢後,我怎麼能得到內存中的原始數據? 我希望能獲得類似csv格式的數據指針。如何在mysql中查詢後獲取原始數據?

char tmp[256]; 
sprintf(tmp,"select * from my_data");          
mysql_query(&DbObj,tmp); 

char * pointer = RESULT; //How to GET this RESULT, is there a short-cut? 

如果我打印的指針,我希望能得到這樣的:

peter 1234 
sue 2332 
... 

我搜索在mysql.h中的它,我無法找到它。 我認爲這是在一些角落。

+1

我會把它不存在的可能性。 SQL結果通常通過「遊標」返回,通常每次只能訪問一行,因此要將整個結果作爲單個字符串來訪問,必須遍歷行並將它們連接在一起。 – 2013-04-27 13:24:20

回答

0

MySQL通過從數據庫複製(分配)到您的變量中來返回數據。對於較大的字段(如BLOB),數據通過使用流進行傳輸。

MySQL將執行您的查詢並返回一個數據集或表。您將需要加載記錄中的項目,然後執行下一步函數前進到下一行。

如果您想將整個結果集(表格)轉換爲內存您可能需要查看驅動程序源代碼。我不確定MySQL是否設置爲將整個錶轉移到內存中。

是否需要您直接訪問表而不是使用MySQL API?

相關問題