|
|
我用C寫mysql的客戶端程序,這樣的查詢如何實現?
|
|
我要查詢一個表,用select後返回的行不確定(有可能是200行,也有可能是2000行),但我想在我的程序中實現翻頁(上翻,下翻),如果用mysql_fetch_row()只能一行行地往下讀?可要再往上讀應該怎麼辦?不會告訴我只能定義一個足夠大的數組再把返回的紀錄全部cp到數據組才能實現吧?如果那樣的話我的數組不是要設很大?還是用那種char aa[][50]不確定數目的數組?
在mysql 的c api裡有沒有把res指向的row往上移一行的函數?好像每用一次mysql_fetch_row()就指向返回的下一行,如果我嚮往上走一行呢?
|
|
|
Re: 我用C寫mysql的客戶端程序,這樣的查詢如何實現?
|
|
用limit(m,n)
|
|
|
能不能寫明白一點?
|
|
我很笨的,這個limit是什麼函數?是mysql c api裡的?還是unix c裡的?這個函數有什麼功能?裡面的參數m,n又是指什麼?
|
|
|
Re: 能不能寫明白一點?
|
|
limit 是mysql提供的擴展
LIMIT子句可以被用來限制SELECT語句返回的行數。LIMIT取1個或2個數字參數,如果給定2個參數,第一個指定要返回的第一行的偏移量,第二個指定返回行的最大數目。初始行的偏移量是0(不是1)。
mysql> select * from table LIMIT 5,10; # Retrieve rows 6-15
如果給定一個參數,它指出返回行的最大數目。
mysql> select * from table LIMIT 5; # Retrieve first 5 rows
換句話說,LIMIT n等價於LIMIT 0,n。
|
|
|
Re: 我用C寫mysql的客戶端程序,這樣的查詢如何實現?
|
|
我用C API訪問MySQL數據庫,運行結果報錯,如下:
relocation errno /usr/lib/libmyclient.so.10: symbol errno,version GLIBC_2.0 not defined in file libc.so.6
with link time reference
以上就是我的錯誤!!
我的測試代碼只有以下:
#include<stdio.h>
#include<mysql.h>
main()
{
MYSQL mysql;
mysql_init(&mysql);(報錯)!!!!
}
請您幫我一下,謝謝!!!
文章選項:
|