?? uclinux下sqlite嵌入式數據庫移植全攻略(5).htm
字號:
<tr><td class=l17><font id="zoom" class=f14>
<!-- 正文內部文字導航 : begin -->
<!-- 正文內部文字導航 : end -->
<p> 文/余濤</p>
<p>
<p><span class=f14> <b>四、修改sqlite/src/shell.c</b><br><br> 1、struct previous_mode_data 結構定義項:<br><br> 將 int colWidth[100];<br><br> 用 int colWidth[20];<br><br> 替換。<br><br> 2、struct callback_data 結構定義項<br><br> 將:<br><br><p>
<p>
<table borderColor=#ffcc66 width="90%" align=center bgColor=#d8d8d1 border=1>
<tbody>
<tr>
<td>int colWidth[100];<br>int actualWidth[100];<br>char outfile[FILENAME_MAX];</td></tr></tbody></table><p>
<p><br> 用:<br><br><p>
<p>
<table borderColor=#ffcc66 width="90%" align=center bgColor=#d8d8d1 border=1>
<tbody>
<tr>
<td>int colWidth[20];<br>int actualWidth[20];<br>char *outfilep;</td></tr></tbody></table><p>
<p><br> 對應替換。<br><br> 再在結構下面增加:<br><br><p>
<p>
<table borderColor=#ffcc66 width="90%" align=center bgColor=#d8d8d1 border=1>
<tbody>
<tr>
<td>#ifndef FILENAME_MAX<br>#define FILENAME_MAX 4095<br>#endif<br>char outfilename[FILENAME_MAX]; /* Filename for *out */</td></tr></tbody></table><p>
<p><br> 即<br><br><p>
<p>
<table borderColor=#ffcc66 width="90%" align=center bgColor=#d8d8d1 border=1>
<tbody>
<tr>
<td>struct callback_data<br>{<br>...<br>};<br>#ifndef FILENAME_MAX<br>#define FILENAME_MAX 4095<br>#endif <br>char outfilename[FILENAME_MAX]; /* Filename for *out */</td></tr></tbody></table><p>
<p><br> 3、函數do_meta_command(...)<br><br> 找到類似這樣的一句:<br><br><p>
<p>
<table borderColor=#ffcc66 width="90%" align=center bgColor=#d8d8d1 border=1>
<tbody>
<tr>
<td>sqlite_exec(p->db, "PRAGMA database_list; ", callback, &data, &zErrMsg);</td></tr></tbody></table><p>
<p><br> 在它的前面有一句<br><br><p>
<p>
<table borderColor=#ffcc66 width="90%" align=center bgColor=#d8d8d1 border=1>
<tbody>
<tr>
<td>memcpy(&data, p, sizeof(data));</td></tr></tbody></table><p>
<p><br> 現在在memcpy下面增加一行<br><br><p>
<p>
<table borderColor=#ffcc66 width="90%" align=center bgColor=#d8d8d1 border=1>
<tbody>
<tr>
<td>data.cnt = 0;</td></tr></tbody></table><p>
<p><br> 即將結構中cnt的值賦為0 ;<br><br> 現在代碼會被修改成類似:<br><br><p>
<p>
<table borderColor=#ffcc66 width="90%" align=center bgColor=#d8d8d1 border=1>
<tbody>
<tr>
<td>open_db(p);<br>memcpy(&data, p, sizeof(data));<br>data.cnt = 0;</td></tr></tbody></table><p>
<p><br> 再繼續。<br><br> 找到類似這樣的一句:<br><br><p>
<p>
<table borderColor=#ffcc66 width="90%" align=center bgColor=#d8d8d1 border=1>
<tbody>
<tr>
<td>strcmp(azArg[1],"stdout")==0</td></tr></tbody></table><p>
<p><br> 在它的下面的括號中:<br><br> 將 strcpy(p->outfile,"stdout");<br><br> 用 p->outfilep = "stdout";<br><br> 來替換。<br><br> 再在它下面的5-6行處<br><br> 將:<br><br><p>
<p>
<p align=right><a href=http://tech.sina.com.cn/other/2004-12-17/0840478377.shtml style=font-size:14px>[上一頁]</a>  <a href=http://tech.sina.com.cn/other/2004-12-17/0840478374.shtml>[1]</a>  <a href=http://tech.sina.com.cn/other/2004-12-17/0840478375.shtml>[2]</a>  <a href=http://tech.sina.com.cn/other/2004-12-17/0840478376.shtml>[3]</a>  <a href=http://tech.sina.com.cn/other/2004-12-17/0840478377.shtml>[4]</a>  [5]  <a href=http://tech.sina.com.cn/other/2004-12-17/0840478379.shtml>[6]</a>  <a href=http://tech.sina.com.cn/other/2004-12-17/0840478379.shtml style=font-size:14px>[下一頁]</a><p>
<!--NEWSZW_HZH_BEGIN-->
<table border=0 cellspacing=0 cellpadding=0 align=left >
<!--
<table id="innerad" border=0 cellspacing=0 cellpadding=0 align=left style="display:none">
-->
<tr><td>
<!--畫中畫廣告開始-->
<table border=0 cellspacing=0 cellpadding=0 align=left>
<tr><td>
<!--科技新聞內頁畫中畫開始-->
<!--D61C4C53F9BB-->
<IFRAME MARGINHEIGHT=0 MARGINWIDTH=0 FRAMEBORDER=0 WIDTH=360 HEIGHT=300 SCROLLING=NO SRC="http://122.adsina.allyes.com/main/adfshow?user=AFP6_for_SINA|Tech|techpip&db=sina&border=0&local=yes">
<SCRIPT LANGUAGE="JavaScript1.1" SRC="http://122.adsina.allyes.com/main/adfshow?user=AFP6_for_SINA|Tech|techpip&db=sina&local=yes&js=on"></SCRIPT>
<NOSCRIPT><A HREF="http://122.adsina.allyes.com/main/adfclick?user=AFP6_for_SINA|Tech|techpip&db=sina"><IMG SRC="http://122.adsina.allyes.com/main/adfshow?user=AFP6_for_SINA|Tech|techpip&db=sina" WIDTH=360 HEIGHT=300 BORDER=0></a></NOSCRIPT></IFRAME>
<!--nwy/ms/1216/B-->
<!--科技新聞內頁畫中畫結束-->
</td></tr></table>
<!--畫中畫廣告結束-->
</td></tr>
<tr><td>
<!-- 畫中畫下文字鏈廣告(從上至下順序為01,02,03,04文字,需加class=a01)-->
<table width=360 border=0 cellpadding=0 cellspacing=0>
<tr><td height=9></td></tr>
<tr><td>
<table width=360 border=0 cellpadding=0 cellspacing=0 background=http://image2.sina.com.cn/dy/images/xfrd_02.gif>
<tr><td height=45 rowspan=2><img src=http://ad4.sina.com.cn/shc/xfrd_01.GIF width=70 height=45 border=0></td><td width=286 style='padding-top:4px;padding-left:5px'>
<!--F70BB90BB6BA--><!--nwy/uc/A-->
<script LANGUAGE="JavaScript">
ad1= "想送免費的歌曲祝福嗎";
link1= "http://bobo.sina.com.cn/";
//左上
ad2= "汽車生活方式大比拼";
link2= "http://adclient.dentsu.com.cn/html.ng/adspec=words&adtype=wen_zi_lian&affiliate=sina&campaignid=59&channel=ke_ji_page&log=0¶ms.styles=clickcmd?";
//右上
ad3= "天堂II 混沌的年代";
link3= "http://sinapay.sina.com.cn/tiantang/choose_style.html";
//左下
ad4= "天堂II 混沌的年代";
link4= "http://sinapay.sina.com.cn/tiantang/choose_style.html";
//右下
//瀏覽器類型變量
var InternetExplorer = navigator.appName.indexOf("Microsoft") != -1;
//ie內容
function IEad(){
adCode = '<OBJECT classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0" WIDTH="280" HEIGHT="40" id="ad_note" ALIGN=""><PARAM NAME=movie VALUE="http://image2.sina.com.cn/dy/zwyhzh/ad_note.swf"> <PARAM NAME=quality VALUE=high> <PARAM NAME=wmode VALUE=transparent> <PARAM NAME=bgcolor VALUE=#FFFFFF> <param name="swLiveConnect" value="true"> '
+' <EMBED src="http://image2.sina.com.cn/dy/zwyhzh/ad_note.swf" quality=high wmode=transparent bgcolor=#FFFFFF WIDTH="280" HEIGHT="40" NAME="ad_note" ALIGN="" TYPE="application/x-shockwave-flash" PLUGINSPAGE="http://www.macromedia.com/go/getflashplayer" swLiveConnect="true"></EMBED></OBJECT>'
document.write(adCode);
document.getElementById('ad_note').SetVariable("ad1", ad1);
document.getElementById('ad_note').SetVariable("ad2", ad2);
document.getElementById('ad_note').SetVariable("ad3", ad3);
document.getElementById('ad_note').SetVariable("ad4", ad4);
document.getElementById('ad_note').SetVariable("link1", link1);
document.getElementById('ad_note').SetVariable("link2", link2);
document.getElementById('ad_note').SetVariable("link3", link3);
document.getElementById('ad_note').SetVariable("link4", link4);
}
//ns內容
function NSad(){
adCode = '<table width=286 border=0 cellpadding=0 cellspacing=0>'
+'<tr height=20><td width=143 style="padding-top:5px;padding-left:5px"> <img src=http://image2.sina.com.cn/dy/images/xfrd_04.gif width=7 height=7> '
+'<a href='+ link1 +' class=a01 target=_blank>'+ ad1 +'</a>'
+'</td><td width=143 style="padding-top:5px;"> <img src=http://image2.sina.com.cn/dy/images/xfrd_04.gif width=7 height=7> '
+'<a href='+ link2 +' class=a01 target=_blank>'+ ad2 +'</a>'
+'</td></tr>'
+'<tr height=20><td style="padding-left:5px"> <img src=http://image2.sina.com.cn/dy/images/xfrd_04.gif width=7 height=7> '
+'<a href='+ link3 +' class=a01 target=_blank>'+ ad3 +'</a>'
+'</td><td> <img src=http://image2.sina.com.cn/dy/images/xfrd_04.gif width=7 height=7> '
+'<a href='+ link4 +' class=a01 target=_blank><SPAN ID="oSpan" UNSELECTABLE="on" >'+ ad4 +'</span></a></td></tr></table>'
document.write(adCode);
}
//主過程
if(InternetExplorer == true){
IEad();
}else{
NSad();
}
</script>
</td><td width=4 rowspan=2><img src=http://image2.sina.com.cn/dy/images/xfrd_03.gif width=4 height=45></td></tr>
</table>
</td></tr>
</table>
</td></tr>
</table>
<!--NEWSZW_HZH_END-->
<table width=90% border=0 align=center>
<tr></tr>
</table>
<br clear=all>
<table width=565 border=0 cellspacing=0 cellpadding=0>
<tr><td class=f14 height=30 valign=top> 點擊此處查詢<a href=http://sinanews.chinasearch.com.cn/sinanews.exe?word=ucLinux target=_blank>全部<font color=red>ucLinux</font>新聞</a> <a href=http://sinanews.chinasearch.com.cn/sinanews.exe?word=操作系統 target=_blank>全部<font color=red>操作系統</font>新聞</a> </td></tr></table>
</td></tr>
</table>
</div>
<br>
<table width=560 border=0 cellspacing=0 cellpadding=0>
<tr><td class=f14>
<a href=http://tech.sina.com.cn/topnews/index.html>新浪科技24小時熱門新聞排行</a>
<a href=http://tech.sina.com.cn/down/drivers/>硬件驅動程序高速下載</a>
<br><br>
</td></tr>
<tr><td>
<table width=565 border=0 cellspacing=0 cellpadding=0>
<tr><td><form target="_blank" action="http://mms.sina.com.cn/xmlmms/xmlmmsQue.php" method="post" name="from_">
<input type="hidden" name="xmlCfg" value="http://rss.sina.com.cn/mms/tech/36/5/89/2-1-478378.xml">
<input type="hidden" name="sourceFrom" value="100001">
<input type="hidden" name="from" value="442">
<input type="submit" name="submit_" style="width:120" value="多種方式看新聞">
</form></td><td align=right>【<a href=http://comment.news.sina.com.cn/cgi-bin/comment/comment.cgi?channel=kj&newsid=478374>評論</a>】【<a href=http://stat.sina.com.cn/cgi-bin/sms/edit_sms.cgi?title=ucLinux%CF%C2sqlite%C7%B6%C8%EB%CA%BD%CA%FD%BE%DD%BF%E2%D2%C6%D6%B2%C8%AB%B9%A5%C2%D4%285%29&url=tech.sina.com.cn/other/2004-12-17/0840478378.shtml>推薦</a>】【<a href="javascript:doZoom(16)">大</a> <a href="javascript:doZoom(14)">中</a> <a href="javascript:doZoom(12)">小</a>】【<a href="javascript:doPrint()">打印</a>】【<a href=http://www.sina.com.cn/ddt/ target=_blank>下載點點通</a>】【<a href="javascript:window.close()">關閉</a>】</td></tr>
</table></td></tr>
</table>
<BR>
<table width=560 border=0 cellspacing=0 cellpadding=0>
<tr><td>
<!-- 正文底部小通欄 -->
<table width=585 border=0 cellpadding=0 cellspacing=0 align=center>
<tr><td>
<!--科技頻道內頁底部小通欄開始-->
<!--DCD3066795C5-->
<OBJECT classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=5,0,0,0" WIDTH="585" HEIGHT="50">
<PARAM NAME=movie VALUE="http://ad4.sina.com.cn/200412/10/6765_picasso_tech_sfc_200412.swf"> <PARAM NAME=quality VALUE=high><param name=wmode value=opaque>
<EMBED src="http://ad4.sina.com.cn/200412/10/6765_picasso_tech_sfc_200412.swf" quality=high WIDTH="585" HEIGHT="50" TYPE="application/x-shockwave-flash" PLUGINSPAGE="http://www.macromedia.com/shockwave/download/index.cgi?P1_Prod_Version=ShockwaveFlash"></EMBED>
</OBJECT><!--xinzhi/2004-12-17/B-->
<!--科技頻道內頁底部小通欄結束-->
</td></tr>
<tr><td height=5></td></tr>
</table>
</td></tr>
</table>
<br>
<table width=560 border=0 cellspacing=0 cellpadding=0>
<tr><td>
<div id=PublicRelation1 name="PublicRelation" style="DISPLAY:none">
<table><tr><td> </td>
<td class=f14>
<p><!--要求文字在17字以內!-->
<!--科技新聞內頁文字鏈01開始-->
<!--4EF9FD7107A8-->
<a href=http://ad.cn.doubleclick.net/clk;12480651;10609175;z?http://www-900.ibm.com/cn/servers/eserver/openpower/ target=_blank><font color=red>Linux,改變世界的力量</font></a><!--weixing/2004-12-16/B-->
<!--科技新聞內頁文字鏈01結束--> <!--994C252CDDD6-->
<a href=http://adclient.dentsu.com.cn/html.ng/adspec=image&adtype=wen_zi_lian&affiliate=sina&campaignid=59&channel=ke_ji_page&log=0¶ms.styles=clickcmd? target=_blank><font color=red>中法文化年,東風雪鐵龍典藏版限量而出</font></a><!--xinzhi/2004-12-31/B--></p>
</td></tr></table>
</div>
<SCRIPT>
//<!--廣告發布-->
<!--
if (checkPubTime(getPubTime()))
{
PublicRelation1.style.display="";
}
-->
</SCRIPT>
</td></tr>
</table>
</td><td width=1 bgcolor=#747474 rowspan=2></td><td width=129 valign=top></td></tr>
</table>
<!-- 右側功能條 begin -->
<div id="toolBar" style="position:absolute;display:'none'">
<table width=129 border=0 cellpadding=0 cellspacing=0>
<tr><td align=right>
<!-- 搜索 begin-->
<script language="javascript">
function select_cgi(fn)
{
search_form1 = fn;
if(search_form1._ss.value == "newstitle") //新聞標題
{
search_form1.searchcontent.name="word";
search_form1.action = "http://sinanews.zhongsou.com/sinanews.exe";
return;
}
else if(search_form1._ss.value == "newsft") //新聞全文
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -