當(dāng)然是嵌入式數(shù)據(jù)庫了,聽歌之類的小軟件,沒有安裝單獨(dú)數(shù)據(jù)庫(sql server)也可以運(yùn)行,大型數(shù)據(jù)庫多在企業(yè)級用戶里邊采用

旬陽網(wǎng)站制作公司哪家好,找創(chuàng)新互聯(lián)建站!從網(wǎng)頁設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、成都響應(yīng)式網(wǎng)站建設(shè)等網(wǎng)站項(xiàng)目制作,到程序開發(fā),運(yùn)營維護(hù)。創(chuàng)新互聯(lián)建站公司2013年成立到現(xiàn)在10年的時(shí)間,我們擁有了豐富的建站經(jīng)驗(yàn)和運(yùn)維經(jīng)驗(yàn),來保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選創(chuàng)新互聯(lián)建站。
嵌入式SQL程序的VC+SQL server 2000實(shí)現(xiàn)的環(huán)境配置
嵌入SQL的C應(yīng)用程序具體到VC++6.0, SQL Server2000 下調(diào)試可分為五步:1、環(huán)境初始化;2、預(yù)編譯;3、編譯;4、連接;5、運(yùn)行。下面就其中重要的的操作方法給以詳細(xì)說明。
1、環(huán)境初始化
(1) SQL Server2000為其嵌入式SQL提供了一此特殊的接口;默認(rèn)的安裝方式?jīng)]有安裝這此接口;因此,需要把devtools.rar解壓到SQLServer的系統(tǒng)日錄下(即文件夾devtools中的所有文件);如果操作系統(tǒng)安裝在C盤,則SQL Server的系統(tǒng)目錄是C:\Program Files\Microsoft SQL Server。(或 在安裝Microsoft SQL Server 2000時(shí)選擇安裝Development Tools,為使用嵌入式SQL語言準(zhǔn)備必要的頭文件和庫文件。)
( 2)初始化Visual C++ 6.0編譯器環(huán)境。在命令行方式下運(yùn)行文件\Microsoft Visual Studio\VC98\Bin\vcvars32.bat。
(3)初始化SQL Server的預(yù)編譯環(huán)境。在命令行方式下運(yùn)行文件:\Devtools\samples\esqlc\setenv.bat。
( 4) VC++6.0環(huán)境配置。具體配置分為如下三步[:
①Tools-options-directories-Include Files:添加 C:\Program Files\Microsoft SQL Server\devtools\include。將SQL server自帶的用于數(shù)據(jù)庫開發(fā)的頭文件包含到工程環(huán)境中。
②Tools-options-directories-Lib Files:添加C:\Program Files\Microsoft SQL Server\devtools\x861ib。將開發(fā)用到的包包含到工程中。
③project-Settings-Link-Object/Library Modules,添加庫文件:SQLakw32.lib, Caw32.lib。這兩個(gè)文件之間用空格分開。
2、預(yù)編譯
C語言編譯程序不能識別應(yīng)用程序中的SQL語句,需要經(jīng)過預(yù)處理程序?qū)⑵滢D(zhuǎn)換成C語句。SQL Server的預(yù)處理程序是nsqlprep.exe。 nsqlprep.exe在SQL Server安裝日錄的MSSQL\Binn下。若SQL Server數(shù)據(jù)庫采用的是默任安裝方式,則需要把binn.rar的內(nèi)容拷貝到指定目錄下。
Microsoft SQL Server 2000提供的預(yù)編譯程序nsqlprep.exe,用于對嵌入式SQL程序進(jìn)行預(yù)編譯處理,生成C語言源程序.實(shí)際上就是將嵌入式SQL程序中的嵌入式SQL語句替換為對運(yùn)行時(shí)庫文件Sqlakw32. dll的函數(shù)調(diào)用,接著運(yùn)行時(shí)庫文件調(diào)用動(dòng)態(tài)連接庫Ntwdblib. dll通過網(wǎng)絡(luò)來存取Microsoft SQL Server 2000數(shù)據(jù)庫服務(wù)器.
預(yù)編譯程序nsqlprep的常用語法為:
nsqlprep ESQL_File /SQLACCESS /DB server_name.database_name /PASS login.password
其中ESQL_File是要預(yù)編譯的嵌入式SQL程序;/SQLACCESS通知nsqlprep自動(dòng)地為嵌入式SQL程序中的靜態(tài)SQL語句創(chuàng)建相應(yīng)的存儲過程;/DB server_name.database_name指明要連接的服務(wù)器以及數(shù)據(jù)庫名稱;/PASS login.password給出登錄名及相應(yīng)的口令.
下面的程序demo.sqc實(shí)現(xiàn)了從數(shù)據(jù)庫服務(wù)器hushaobo的數(shù)據(jù)庫pubs中的authors表中讀取au_lname為white的人對應(yīng)的 au_fname 值,并保存到變量first_name 中顯示出來。(連接數(shù)據(jù)庫的用戶為sa,對應(yīng)密碼為1982)
#includestdio.h
void main()
{
EXEC SQL BEGIN DECLARE SECTION;
char first_name[40];
char last_name[]="White";
EXEC SQL END DECLARE SECTION;
EXEC SQL CONNECT TO hushaobo.pubs
USER sa.1982;
EXEC SQL SELECT au_fname INTO :first_name from authors WHERE au_lname = :last_name;
EXEC SQL DISCONNECT ALL;
printf("first name: %s \n",first_name);
}
在命令行下運(yùn)行:nsqlprep demo.sqc /SQLACCESS /DB hushaobo.pubs /PASS sa.1982
則生成demo.c,將該文件添加到VC工程中編譯即可。
3、編譯,連接與運(yùn)行
在VC++6.0中創(chuàng)建一個(gè) "WIN32 Console Application"的Proiect,然后將預(yù)編譯生成的c文件加入Proiect,編譯連接即可生成訪問SQL Server的可執(zhí)行程序。 Visual C++ 6.0進(jìn)行編譯連接時(shí)需要用到動(dòng)態(tài)鏈接庫SQLakw32.d11與SQLaiw32.d11;盡管這兩個(gè)文件已經(jīng)隨同binn.rar被拷貝到SQLServer安裝目錄的MSSQL\Binn文件夾下,但仍然需要把它們的路徑加到系統(tǒng)路徑變量中,以使得程序運(yùn)行時(shí)能找到它們,具體添加方法如下:
方法1:把這兩個(gè)文件拷貝到操作系統(tǒng)目錄下的system32子目錄中。
方法2:我的電腦-屬性-高級-環(huán)境變量-path-編輯,在變量值中加入路徑值;新路徑與已有路徑間用;間隔。
注意調(diào)適程序時(shí),文件名中不要包含cursor,否則可能會出錯(cuò)。
沒什么難的。這類系統(tǒng)不涉及到很多的事物,所以你可以把sqlserver當(dāng)access來用,就是一個(gè)純粹的數(shù)據(jù)倉庫而已。至于vc中和數(shù)據(jù)庫互聯(lián)操作,也有很多種選擇。
其實(shí)還是看實(shí)際需要吧。
不過一般做嵌入式開發(fā)的,我覺得SQLite夠了。
他們本質(zhì)的區(qū)別是在底層的實(shí)現(xiàn),這些不是我們程序員需要管的。
所以,即使比較熟悉SQL Sever,但是SQLite在使用上沒有太多區(qū)別,很容易上手的。
分享標(biāo)題:嵌入式SQLserver,嵌入式開發(fā)培訓(xùn)
當(dāng)前鏈接:http://chinadenli.net/article37/dsspepj.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站改版、全網(wǎng)營銷推廣、用戶體驗(yàn)、商城網(wǎng)站、小程序開發(fā)、
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)