新聞中心
隨著信息技術(shù)的不斷發(fā)展,數(shù)據(jù)庫成為管理和存儲大量數(shù)據(jù)的關(guān)鍵工具。目前,市面上有許多不同種類的數(shù)據(jù)庫,例如關(guān)系型數(shù)據(jù)庫、NoSQL數(shù)據(jù)庫等。而不同的數(shù)據(jù)庫類型具有不同的特點和優(yōu)勢,因此在實際應(yīng)用中,我們需要通過合適的方式訪問它們。本文將介紹如何使用,旨在提高程序開發(fā)的靈活性和可擴展性。

1. 數(shù)據(jù)庫訪問方式
在進行數(shù)據(jù)庫訪問時,通常有兩種方式:基于ODBC的訪問和基于API的訪問。ODBC是Open Database Connectivity的縮寫,是一種標(biāo)準(zhǔn)化開放的數(shù)據(jù)庫編程接口,支持訪問大多數(shù)主流數(shù)據(jù)庫,如MySQL、Oracle、SQL Server等。API是Application Programming Interface的縮寫,是一系列為應(yīng)用程序提供訪問操作系統(tǒng)、硬件設(shè)備、庫等服務(wù)的函數(shù)和過程。在C語言中,通過調(diào)用API來實現(xiàn)對數(shù)據(jù)庫的訪問。
2. ODBC訪問方法
使用ODBC訪問數(shù)據(jù)庫,需要安裝ODBC驅(qū)動程序。ODBC驅(qū)動程序可以是由數(shù)據(jù)庫廠商提供,也可以是由第三方公司提供。安裝好驅(qū)動程序之后,就可以通過ODBC接口調(diào)用數(shù)據(jù)庫了。ODBC提供了對SQL語言的高級支持,可以更加方便地進行數(shù)據(jù)庫操作。
在C語言中,可以使用ODBC API來訪問數(shù)據(jù)庫。ODBC API是一個面向關(guān)系型數(shù)據(jù)庫的API,其提供了許多函數(shù),如SQLConnect、SQLExecDirect等,用于打開數(shù)據(jù)庫連接、執(zhí)行SQL語句等操作。下面是一個使用ODBC API訪問MySQL數(shù)據(jù)庫的例子:
“`
#include
#include
#include
void mn()
{
SQLHENV env;
SQLHDBC dbc;
SQLHSTMT stmt;
SQLRETURN ret;
SQLCHAR outstr[1024];
SQLALLINT outstrlen;
/* Allocate environment handle */
ret = SQLAllocHandle(SQL_HANDLE_ENV, SQL_NULL_HANDLE, &env);
/* Set the ODBC version environment attribute */
ret = SQLSetEnvAttr(env, SQL_ATTR_ODBC_VERSION, (void*)SQL_OV_ODBC3, 0);
/* Allocate connection handle */
ret = SQLAllocHandle(SQL_HANDLE_DBC, env, &dbc);
/* Connect to the data source */
ret = SQLConnect(dbc, “MYSQL”, SQL_NTS, “root”, SQL_NTS, “password”, SQL_NTS);
/* Allocate statement handle */
ret = SQLAllocHandle(SQL_HANDLE_STMT, dbc, &stmt);
/* Execute the SQL statement */
ret = SQLExecDirect(stmt, “SELECT * FROM table”, SQL_NTS);
/* Fetch the data */
while (SQLFetch(stmt) == SQL_SUCCESS) {
SQLGetData(stmt, 1, SQL_C_CHAR, outstr, 1024, &outstrlen);
printf(“%s\n”, outstr);
}
/* Free the handles */
SQLFreeHandle(SQL_HANDLE_STMT, stmt);
SQLDisconnect(dbc);
SQLFreeHandle(SQL_HANDLE_DBC, dbc);
SQLFreeHandle(SQL_HANDLE_ENV, env);
}
“`
在上面的代碼中,首先通過SQLAllocHandle函數(shù)分配了環(huán)境句柄(env)、連接句柄(dbc)和語句句柄(stmt),然后通過SQLSetEnvAttr函數(shù)設(shè)置了ODBC版本,再通過SQLConnect函數(shù)連接到MySQL數(shù)據(jù)庫,最后通過SQLExecDirect函數(shù)執(zhí)行SELECT語句,獲取查詢結(jié)果并輸出。
3. API訪問方法
使用API訪問數(shù)據(jù)庫,需要根據(jù)不同的數(shù)據(jù)庫類型選擇對應(yīng)的API。例如,對于MongoDB數(shù)據(jù)庫,可以使用mongoc API;對于Redis數(shù)據(jù)庫,可以使用hiredis API。這些API提供了與數(shù)據(jù)庫交互的各種函數(shù),可以進行數(shù)據(jù)查詢、插入、更新、刪除等操作。
在C語言中,可以使用API直接調(diào)用這些函數(shù),與數(shù)據(jù)庫進行交互。下面是一個使用MongoDB API訪問數(shù)據(jù)庫的例子:
“`
#include
void mn()
{
mongoc_client_t *client;
mongoc_database_t *database;
mongoc_collection_t *collection;
bson_t *query;
mongoc_cursor_t cursor;
const bson_t *doc;
char *str;
/* Connect to MongoDB */
mongoc_init();
client = mongoc_client_new(“mongodb://localhost:27017/”);
database = mongoc_client_get_database(client, “test”);
collection = mongoc_client_get_collection(client, “test”, “data”);
/* Query data */
query = bson_new();
cursor = mongoc_collection_find_with_opts(collection, query, NULL, NULL);
/* Print data */
while (mongoc_cursor_next(cursor, &doc)) {
str = bson_as_json(doc, NULL);
printf(“%s\n”, str);
bson_free(str);
}
/* Release resources */
bson_destroy(query);
mongoc_collection_destroy(collection);
mongoc_database_destroy(database);
mongoc_client_destroy(client);
mongoc_cleanup();
}
“`
在上面的代碼中,首先使用mongoc_init函數(shù)進行初始化,然后通過mongoc_client_new函數(shù)連接到MongoDB數(shù)據(jù)庫,獲取數(shù)據(jù)庫對象和對象,通過mongoc_collection_find_with_opts函數(shù)執(zhí)行查詢操作,最后通過mongoc_cursor_next函數(shù)獲取查詢結(jié)果并輸出。
4.
相關(guān)問題拓展閱讀:
- 我學(xué)計算機網(wǎng)絡(luò)技術(shù)專業(yè)請幫我課程選擇
- c語言可以連接access數(shù)據(jù)庫??
我學(xué)計算機網(wǎng)絡(luò)技術(shù)專業(yè)請幫我課程選擇
建議你學(xué).NET語言,現(xiàn)在很多企業(yè)都招收這樣的人才,學(xué)軟件編程語言就學(xué)個最基礎(chǔ)的C語言吧,把他寬亮學(xué)會了,其他的語言都簡單很多了,而且C語言確實相當(dāng)?shù)膹姶笈秪網(wǎng)絡(luò)工程師我建議你去黑基賀簡之類的網(wǎng)絡(luò)上的教學(xué)網(wǎng)站繳費學(xué)習(xí),慎拍寬那些大網(wǎng)站不騙人,而且教的東西也很實用,最后還要希望你你能明白個道理,學(xué)的再多都是P,只有多實用才是真的。祝你學(xué)習(xí)順利,事業(yè)有成哦~~~
希望對您有幫助
計算機語言的種類非常的多,總的來說可以分成機器語言,匯編語言,高級語言三大類。
電腦每做的一次動作,一個步驟,都是按照以經(jīng)用計算機語言編好的程序來執(zhí)行的,程序是計算機要執(zhí)行的指令的,而程序全部都是用我們所掌握的語言來編寫的。所以人們要控制計算機一定要通過計算機語言向計算機發(fā)出命令。
計算機所能識別的語言只有機器語言,即由0和1構(gòu)成的代碼。但通常人們編程時,不采用機器語言,因為它非常難于記憶和識別。
目前通用的編程語言有兩種形式:匯編語言和高級語言。
匯編語言的實質(zhì)和機器語言是相同的,都是直接對硬件操作,只不過指令采用了英文縮寫的標(biāo)識符,更容易識別和記憶。它同樣需要編程者將每一步具體的操作用命令的形式寫出來。匯編程序通常由三部分組成:指令、偽指令和宏指令。匯編程序的每一句指令只能對應(yīng)實際操作過程中的一個很細微的動作,例如移動、自增,因此匯編源程序一般比較冗長、復(fù)雜、容易出錯,而且使用匯編語言編程需要有更多的計算機專業(yè)知識,但匯編語言的優(yōu)點也是顯而易見的,用匯編語言所能完成的操作不是一般高級語言所能實現(xiàn)的,而且源程序經(jīng)匯編生成的可執(zhí)行文件不僅比較小,而且執(zhí)行速度很快。
高級語言是目前絕大多數(shù)巧如虧編程者的選擇。和匯編語言相比,它不但將許多相關(guān)的機器指令合成為單條指令,并且去掉了與具體操作有關(guān)但與完成工作無關(guān)的細節(jié),例如使用堆棧、寄存器等,這樣就大大簡化了程序中的指令。同時,由于省略了很多細節(jié),編程者也就不需要有太多的專業(yè)知識。
高級語言主要是相對于匯編語言而言,它并不是特指某一種具體的語言,而是包括了很多編程語言,如目前流行的VB、VC、FoxPro、Delphi等,這些語言的語法、命令格式都各不相同。
高級語言所編制的程序不能直接被計算機識別,必須經(jīng)過轉(zhuǎn)換才能被執(zhí)行,按轉(zhuǎn)換方式可將它們分為兩類:
解釋類:執(zhí)行方式類似于我們?nèi)粘I钪械摹巴暦g”,應(yīng)用程序源代碼一邊由相應(yīng)語言的解釋器“翻譯”成目標(biāo)代碼(機器語言),一邊執(zhí)行,因此效率比較低,而且不能生成可獨立執(zhí)行的可執(zhí)行文件,應(yīng)用程序不能脫離其解釋器,但這種方式比較靈活,可以動態(tài)地調(diào)整、修改應(yīng)用程序。
編譯類:編譯是指在應(yīng)用源程序執(zhí)行之前,就將程序源代碼“孝神翻譯”成目標(biāo)代碼(機器語言),因此其目標(biāo)程序可以脫離其語言環(huán)境獨立執(zhí)行,使用比較方便、效率較高。但應(yīng)用程序一旦需要修改,必須先修改源代碼,再重新編譯生成新的目標(biāo)文件(* .OBJ)才能執(zhí)行,只有目標(biāo)文件而沒有源代碼,修改很不方便?,F(xiàn)在大多數(shù)的編程語言都是編譯型的,例如Visual C++、Visual Foxpro、Delphi等。
學(xué)習(xí)編程,從何入手
如果您想學(xué)習(xí)編程,卻又不知從何入手,那么您不妨看看下面的幾種學(xué)習(xí)方案,可能會給您一些啟示吧!
==============================================
方案一 Basic語言 & Visual Basic
優(yōu)點
(1)Basic 簡單易學(xué),很容易上手。
(2)Visual Basic 提供了強大的可視化編程能力,可以讓你輕松地做出漂亮的程序。
(3)眾多的控件讓編程變得象壘積木一樣簡單。
(4)Visual Basic 的全部漢化讓我們這些見了English就頭大的人喜不自禁。
缺點
(1)Visual Basic 不是真正的面向?qū)ο蟮拈_發(fā)文具。
(2)Visual Basic 的數(shù)據(jù)類型太少,而且不支持指針,這使得它的表達能力很有限。
(3)Visual Basic 不是真正的編譯型語言,它產(chǎn)生的最終代碼不是可執(zhí)行的,是一種偽代碼。它需要一個動態(tài)鏈接庫去解釋執(zhí)行,這使得Visual Basic 的編譯速度大大變慢。
綜述:方案一適合初涉編程的朋友,它對學(xué)習(xí)者的要求不高,幾橡沒乎每個人都可以在一個比較短的時間里學(xué)會vB編程,并用VB 做出自己的作品。對于那些把編程當(dāng)做游戲的朋友來說,VB 是您更佳的選擇。
Basic/Visual Basic簡介
==============================================
方案二 Pascal語言 & Delphi
優(yōu)點
(1)Pascal語言結(jié)構(gòu)嚴謹,可以很好地培養(yǎng)一個人的編程思想。
(2)Delphi是一門真正的面向?qū)ο蟮拈_發(fā)工具,并且是完全的可視化。
(3)Delphi使用了真編譯,可以讓你的代碼編譯成為可執(zhí)行的文件,而且編譯速度非常快。
(4)Delphi具有強大的數(shù)據(jù)庫開發(fā)能力,可以讓你輕松地開發(fā)數(shù)據(jù)庫。
缺點
Delphi幾乎可以說是完美的,只是Pascal語言的過于嚴謹讓人感覺有點煩。
綜述: 方案二比較適合那些具有一定編程基礎(chǔ)并且學(xué)過Pascal語言的朋友。
Pascal語言簡介
Delphi簡介
==============================================
方案三 C語言 & Visual C++
優(yōu)點
(1)C語言靈活性好,效率高,可以接觸到軟件開發(fā)比較底層的東西。
(2)微軟的MFC庫博大精深,學(xué)會它可以讓隨心所欲地進行編程。
(3)VC是微軟制作的產(chǎn)品,與操作系統(tǒng)的結(jié)合更加緊密。
缺點
對使用者的要求比較高,既要具備豐富的C語言編程經(jīng)驗,又要具有一定的WINDOWS編程基礎(chǔ),它的過于專業(yè)使得一般的編程愛好者學(xué)習(xí)起來會有不小的困難。
綜述: VC是程序員用的東西。如果你是一個永不滿足的人,而且可以在編程上投入很大的精力和時間,那么學(xué)習(xí)VC你一定不會后悔的。
C語言簡介
==============================================
方案四 C++語言 & C++ Builder
優(yōu)點
(1)C++語言的優(yōu)點全部得以繼承。
(2)完全的可是化。
(3)極強的兼容性,支持OWL、VCL和MFC三大類庫。
(4)編譯速度非???。
缺點
由于推出的時間太短,關(guān)于它的各種資料還不太多。
綜述:我認為C++ Builder 是更好的編程工具。它既保持了C++語言編程的優(yōu)點,又做到了完全的可視化。
C語言簡介
==============================================
方案五 SQL語言 & Power Builder
對于一些傳統(tǒng)的數(shù)據(jù)開發(fā)人員來說,F(xiàn)oxpro系列也許讓他們感到更加熟悉。但是對于初學(xué)者來說,PowerBuilder也許是更好的數(shù)據(jù)庫開發(fā)工具。各種各樣的控件,功能強大的PowerBuilder語言都會幫助你開發(fā)出自己的數(shù)據(jù)庫應(yīng)用程序。
P簡介
在Sun正式發(fā)布P(Java Server Pages)之后,這種新的Web應(yīng)用開發(fā)技術(shù)很快引起了人們的關(guān)注。P為創(chuàng)建高度動態(tài)的Web應(yīng)用提供了一個獨特的開發(fā)環(huán)境。按照 Sun 的說法,P能夠適應(yīng)市場上包括Apache WebServer 、IIS4.0在內(nèi)的85%的服務(wù)器產(chǎn)品。
P與ASP的簡單比較
P與Microsoft的ASP技術(shù)非常相似。兩者都提供在HTML代碼中混合某種程序代碼、由語言引擎解釋執(zhí)行程序代碼的能力。在ASP或P環(huán)境下,HTML代碼主要負責(zé)描述信息的顯示樣式,而程序代碼則用來描述處理邏輯。普通的HTML頁面只依賴于Web服務(wù)器,而ASP和P頁面需要附加的語言引擎分析和執(zhí)行程序代碼。程序代碼的執(zhí)行結(jié)果被重新嵌入到HTML代碼中,然后一起發(fā)送給瀏覽器。ASP和P都是面向Web服務(wù)器的技術(shù),客戶端瀏覽器不需要任何附加的軟件支持。
ASP的編程語言是VBScript之類的腳本語言,P使用的是Java,這是兩者最明顯的區(qū)別。
此外,ASP與P還有一個更為本質(zhì)的區(qū)別:兩種語言引擎用完全不同的方式處理頁面中嵌入的程序代碼。在ASP下,VBScript代碼被ASP引擎解釋執(zhí)行;在P下,代碼被編譯成Servlet并由Java虛擬機執(zhí)行,這種編譯操作僅在對P頁面的之一次請求時發(fā)生。
運行環(huán)境
執(zhí)行 P 代碼需要在服務(wù)器上安裝 P 引擎。此處我們使用的是 Sun 的 JavaServer Web Development Kit ( WDK )。為便于學(xué)習(xí),這個軟件包提供了大量可供修改的示例。安裝 WDK 之后,只需執(zhí)行 startserver 命令即可啟動服務(wù)器。在默認配置下服務(wù)器在端口 8080 監(jiān)聽,使用
即可打開缺省頁面。
在運行 P 示例頁面之前,請注意一下安裝 WDK 的目錄,特別是” work “子目錄下的內(nèi)容。執(zhí)行示例頁面時,可以在這里看到 P 頁面如何被轉(zhuǎn)換成 Java 源文件,然后又被編譯成 class 文件(即 Servlet )。 WDK 軟件包中的示例頁面分為兩類,它們或者是 P 文件,或者是包含一個表單的 HTML 文件,這些表單均由 P 代碼處理。與 ASP 一樣, P 中的 Java 代碼均在服務(wù)器端執(zhí)行。因此,在瀏覽器中使用”查看源文件”菜單是無法看到 P 源代碼的,只能看到結(jié)果 HTML 代碼。所有示例的源代碼均通過一個單獨的” examples “頁面提供。
Java Servlet是一種開發(fā)Web應(yīng)用的理想構(gòu)架。 P以Servlet技術(shù)為基礎(chǔ),又在許多方面作了改進。P頁面看起來象普通HTML頁面,但它允許嵌入執(zhí)行代碼,在這一點上,它和ASP技術(shù)非常相似。利用跨平臺運行的JavaBean 組件,P為分離處理邏輯與顯示樣式提供了卓越的解決方案。P必將成為ASP技術(shù)的有力競爭者。
SQL語言簡介
SQL全稱是“結(jié)構(gòu)化查詢語言(Structured Query Language)”,最早的是IBM的圣約瑟研究實驗室為其關(guān)系數(shù)據(jù)庫管理系統(tǒng)SYSTEM R開發(fā)的一種查詢語言,它的前身是SQUARE語言。SQL語言結(jié)構(gòu)簡潔,功能強大,簡單易學(xué),所以自從IBM公司1981年推出以來,SQL語言,得到了廣泛的應(yīng)用。如今無論是像Oracle ,Sybase,Informix,SQL server這些大型的數(shù)據(jù)庫管理系統(tǒng),還是像Visual Foxporo,PowerBuilder這些微機上常用的數(shù)據(jù)庫開發(fā)系統(tǒng),都支持SQL語言作為查詢語言。
Structured Query Language包含4個部分:
數(shù)據(jù)查詢語言DQL-Data Query Language SELECT
數(shù)據(jù)操縱語言DQL-Data Manipulation Language INSERT, UPDATE, DELETE
數(shù)據(jù)定義語言DQL-Data Definition Language CREATE, ALTER, DROP
數(shù)據(jù)控制語言DQL-Data Control Language COMMIT WORK, ROLLBACK WORK
SQL的歷史
在70年代初,E.E.Codd首先提出了關(guān)系模型。70年代中期,IBM公司在研制 SYSTEM R關(guān)系數(shù)據(jù)庫管理系統(tǒng)中研制了SQL語言,最早的SQL語言(叫SEQUEL2)是在1976 年 11 月的IBM Journal of R&D上公布的。
1979年ORACLE公司首先提供商用的SQL,IBM公司在DB2 和SQL/DS數(shù)據(jù)庫系統(tǒng)中也實現(xiàn)了SQL。
1986年10月,美國ANSI采用SQL作為關(guān)系數(shù)據(jù)庫管理系統(tǒng)的標(biāo)準(zhǔn)語言(ANSI X3.),后為國際標(biāo)準(zhǔn)化組織(ISO)采納為國際標(biāo)準(zhǔn)。
1989年,美國ANSI采納在ANSI X3.報告中定義的關(guān)系數(shù)據(jù)庫管理系統(tǒng)的SQL標(biāo)準(zhǔn)語言,稱為ANSI SQL 89, 該標(biāo)準(zhǔn)替代ANSI X3.版本。該標(biāo)準(zhǔn)為下列組織所采納:
● 國際標(biāo)準(zhǔn)化組織(ISO),為ISO報告“Database Language SQL With Integrity Enhancement”
● 美國聯(lián)邦,發(fā)布在The Federal Information Processing Standard Publication(FIPS PUB)127
目前,所有主要的關(guān)系數(shù)據(jù)庫管理系統(tǒng)支持某些形式的SQL語言, 大部分數(shù)據(jù)庫打算遵守ANSI SQL89標(biāo)準(zhǔn)。
SQL的優(yōu)點
SQL廣泛地被采用正說明了它的優(yōu)點。它使全部用戶,包括應(yīng)用程序員、DBA管理員和終端用戶受益非淺。
(1) 非過程化語言
SQL是一個非過程化的語言,因為它一次處理一個記錄,對數(shù)據(jù)提供自動導(dǎo)航。SQL允許用戶在高層的數(shù)據(jù)結(jié)構(gòu)上工作,而不對單個記錄進行操作,可操作記錄集。所有SQL 語句接受作為輸入,返回作為輸出。SQL的特性允許一條SQL語句的結(jié)果作為另一條SQL語句的輸入。 SQL不要求用戶指定對數(shù)據(jù)的存放方法。 這種特性使用戶更易集中精力于要得到的結(jié)果。所有SQL語句使用查詢優(yōu)化器,它是RDBMS的一部分,由它決定對指定數(shù)據(jù)存取的最快速度的手段。查詢優(yōu)化器知道存在什么索引,哪兒使用合適,而用戶從不需要知道表是否有索引,表有什么類型的索引。
(2) 統(tǒng)一的語言
SQL可用于所有用戶的DB活動模型,包括系統(tǒng)管理員、數(shù)據(jù)庫管理員、 應(yīng)用程序員、決策支持系統(tǒng)人員及許多其它類型的終端用戶?;镜腟QL 命令只需很少時間就能學(xué)會,更高級的命令在幾天內(nèi)便可掌握。 SQL為許多任務(wù)提供了命令,包括:
● 查詢數(shù)據(jù)
● 在表中插入、修改和刪除記錄
● 建立、修改和刪除數(shù)據(jù)對象
● 控制對數(shù)據(jù)和數(shù)據(jù)對象的存取
● 保證數(shù)據(jù)庫一致性和完整性
以前的數(shù)據(jù)庫管理系統(tǒng)為上述各類操作提供單獨的語言,而SQL 將全部任務(wù)統(tǒng)一在一種語言中。
(3) 是所有關(guān)系數(shù)據(jù)庫的公共語言
由于所有主要的關(guān)系數(shù)據(jù)庫管理系統(tǒng)都支持SQL語言,用戶可將使用SQL的技能從一個RDBMS轉(zhuǎn)到另一個。所有用SQL編寫的程序都是可以移植的。
Java語言簡介
一. Java的由來
當(dāng)1995年SUN推出Java語言之后,全世界的目光都被這個神奇的語言所吸引。那么Java到底有何神奇之處呢?
Java語言其實最是誕生于1991年,起初被稱為OAK語言,是SUN公司為一些消費性電子產(chǎn)品而設(shè)計的一個通用環(huán)境。他們最初的目的只是為了開發(fā)一種獨立于平臺的軟件技術(shù),而且在網(wǎng)絡(luò)出現(xiàn)之前,OAK可以說是默默無聞,甚至差點夭折。但是,網(wǎng)絡(luò)的出現(xiàn)改變了OAK的命運。
在Java出現(xiàn)以前。Internet上的信息內(nèi)容都是一些乏味死板的HTML文檔。這對于那些迷戀于WEB瀏覽的人們來說簡直不可容忍。他們迫切希望能在WEN中看到一些交互式的內(nèi)容,開發(fā)人員也極希望能夠在WEB上創(chuàng)建一類無需考慮軟硬件平臺就可以執(zhí)行的應(yīng)用程序,當(dāng)然這些程序還要有極大的安全保障。對于用戶的這種要求,傳統(tǒng)的編程語言顯得無能為力,面SUN的工程師敏銳地察覺到了這一點,從1994年起,他們開始將OAK技術(shù)應(yīng)用于WEB上,并且開發(fā)出了HotJava的之一個版本。當(dāng)SUN公司1995年正式以Java這個名字推出的時候,幾乎所有的WEB開發(fā)人員都想到:噢,這正是我想要的。于是Java成了一顆耀眼的明星,丑小鴨一下了變成了白天鵝。
二. Java的定義
Java是一種簡單的,面象對象的,分布式的,解釋的,鍵壯的安全的,結(jié)構(gòu)的中立的,可移植的,性能很優(yōu)異的多線程的,動態(tài)的語言。
Java的開發(fā)環(huán)境有不同的版本,如sun公司的Java Developers Kit, 簡稱 JDK。后來微軟公司推出了支持Java規(guī)范的Microsoft Visual J++ Java開發(fā)環(huán)境,簡稱 VJ++。
三. Java的特點
1. 平臺無關(guān)性
平臺無關(guān)性是指Java能運行于不同的平臺。Java引進虛擬機 原理,并運行于虛擬機,實現(xiàn)不同平臺的Java接口之間。使 用Java編寫的程序能在世界范圍內(nèi)共享。Java的數(shù)據(jù)類型與 機器無關(guān),Java虛擬機(Java Virtual Machine)是建立在 硬件和操作系統(tǒng)之上,實現(xiàn)Java二進制代碼的解釋執(zhí)行功能, 提供于不同平臺的接口的。
2. 安全性
Java的編程類似C++,學(xué)習(xí)過C++的讀者將很快掌握Java的精 髓。Java舍棄了C++的指針對存儲器地址的直接操作,程序 運行時,內(nèi)存由操作系統(tǒng)分配,這樣可以避免病毒通過指 針侵入系統(tǒng)。Java對程序提供了安全管理器,防止程序的 非法訪問。
3. 面向?qū)ο?/p>
Java 吸取了C++面向?qū)ο蟮母拍?將數(shù)據(jù)封裝于類中,利用類 的優(yōu)點,實現(xiàn)了程序的簡潔性和便于維護性。類的封裝性、 繼承性等有關(guān)對象的特性,使程序代碼只需一次編譯,然后 通過上述特性反復(fù)利用。程序員只需把主要精力用在類和接 口的設(shè)計和應(yīng)用上。Java 提供了眾多的一般對象的類,通 過繼承即可使用父類的方法。在 Java 中,類的繼承關(guān)系是單一的非多重的,一個子類 只有一個父類,子類的父類又有一個父類。Java 提供的 Object 類及其子類的繼承關(guān)系如同一棵倒立的樹形,根類 為 Object 類, Object 類功能強大,經(jīng)常會使用到它及其 它派生的子類。
4. 分布式
Java建立在擴展TCP/IP網(wǎng)絡(luò)平臺上。庫函數(shù)提供了用HTTP和FTP協(xié)議傳送和接受信息的方法。這使得程序員使用網(wǎng)絡(luò)上的文件和使用本機文件一樣容易。
5. 鍵壯性
Java致力于檢查程序在編譯和運行時的錯誤。類型檢查幫助檢查出許多開發(fā)早期出現(xiàn)的錯誤。Java自已操縱內(nèi)存減少了內(nèi)存出錯的可能性。Java還實現(xiàn)了真數(shù)組,避免了覆蓋數(shù)據(jù)的可能。這些功能特征大大提高了開發(fā)Java應(yīng)用程序的周期。Java提供: Null指針檢測、 數(shù)組邊界檢測、 異常出口、 Byte code校驗。
四. Java與C/C++語言
Java提供了一個功能強大語言的所有功能,但幾乎沒有一點含混特征。C++安全性不好,但C和C++被大家接受,所以Java設(shè)計成C++形式,讓大家很容易學(xué)習(xí)。
Java去掉了C++語言的許多功能,讓Java的語言功能很精煉,并增加了一些很有用的功能,如自動收集碎片。
Java去掉了以下幾個C和C++功能:
指針運算
結(jié)構(gòu)
typedefs
#define
需要釋放內(nèi)存
這將減少了平常出錯的50%。而且,Java很小,整個解釋器只需215K的RAM。
面象對象:Java實現(xiàn)了C++的基本面象對象技術(shù)并有一些增強,(為了語言簡單,刪除了一些功能)。Java處理數(shù)據(jù)方式和用對象接口處理對象數(shù)據(jù)方式一樣。
五. Java與Internet
我們知道,早先的 www 僅可以傳送文本和圖片,Java的出現(xiàn)實現(xiàn)了互動的頁面,是一次偉大的革命。
Java并不是為 Internet,WWW而設(shè)計的,它也可以用來編寫?yīng)毩⒌膽?yīng)用程序。Java 是一種面向?qū)ο笳Z言。Java 語言類似于 C++ 語言,所以已熟練掌握 C++語言的編程人員,再學(xué)習(xí) Java 語言就容易得多!Java 程序需要編譯。實際上有兩種 Java 程序:一種 Java 應(yīng)用程序是一個完整的程序,如 Web 瀏覽器。一種 Java 小應(yīng)用程序是運行于 Web 瀏覽器中的一個程序.
Java程序和它的瀏覽器HotJava,提供了可讓你的瀏覽器運行程序的方法。你能從你的瀏覽器里直接播放聲音。你還能播放頁面里的動畫。Java還能告訴你的瀏覽器怎樣處理新的類型文件。當(dāng)我們能在2400 baud線上傳輸視頻圖象時,HotJava將能顯示這些視頻。
當(dāng)今Internet的一大發(fā)展趨勢是電子商務(wù),而Internet的安全問題是必須解決的問題,通常大的部門應(yīng)設(shè)置防火墻,阻止非法侵入。
電子商務(wù)是當(dāng)今的熱門話題,然而傳統(tǒng)的編程語言難以勝任電子商務(wù)系統(tǒng),電子商務(wù)要求程序代碼具有基本的要求:安全、可靠、同時要求能 與運行于不同平臺的機器的全世界客戶開展業(yè)務(wù)。Java以其強安全性、平臺無關(guān)性、硬件結(jié)構(gòu)無關(guān)性、語言簡潔同時面向?qū)ο?,在網(wǎng)絡(luò)編程語言中占據(jù)無可比擬的優(yōu)勢,成為實現(xiàn)電子商務(wù)系統(tǒng)的選擇語言。
Java程序被放置在Internet服務(wù)器上,當(dāng)用戶訪問服務(wù)器時,Java程序被下載到本地的用戶機上,由瀏覽器解釋運行。
PowerBuilder簡介
PowerBuilder的產(chǎn)生
PowerBuilder是美國著名的數(shù)據(jù)庫應(yīng)用開發(fā)工具生產(chǎn)廠商PowerSoft推出的成功產(chǎn)品,其之一版于1991年6月正式投入市場。它是完全按照客戶/服務(wù)器體系結(jié)構(gòu)研制設(shè)計的,采用面向?qū)ο蠹夹g(shù),圖形化的應(yīng)用開發(fā)環(huán)境,是數(shù)據(jù)庫的前端開發(fā)工具。
PowerBuilder的特點
它支持應(yīng)用系統(tǒng)同時訪問多種數(shù)據(jù)庫,其中既包括Oracel,Sybase之類的大型數(shù)據(jù)庫,又包括FOXPRO之類支持ODBC接口的小型數(shù)據(jù)庫,PowerBuilder是完全可視化的數(shù)據(jù)庫開發(fā)工具,它提供了大量的控件,大大加快了項目的開發(fā)速度,也使開發(fā)者更容易掌握數(shù)據(jù)庫的開發(fā)。
它使用的編程語言叫做工PowerScripr,它也是一種高級的,結(jié)構(gòu)化的編程語言。PowerScript提供了一套完整的嵌入式SQL語句,開發(fā)人員可以像使用其它語句一樣自由地使用SQL語言,這樣就大大增強了程序操縱和訪問數(shù)據(jù)庫的能力。可以說PowerBuilder既適合初學(xué)者快速學(xué)習(xí)數(shù)據(jù)庫的開發(fā),又可以讓有經(jīng)驗的開發(fā)人員開發(fā)出功能強大的數(shù)據(jù)庫,是一種適用面非常廣的開發(fā)工具。
PowerBuilder是一個用來進行客戶/服務(wù)器開發(fā)的完全的可視化開發(fā)環(huán)境。使用PowerBuilder,你可以用一種可視的直觀的方式來創(chuàng)建應(yīng)用程序的用戶界面和數(shù)據(jù)庫接口。這是一個總的概念,實際上是開發(fā)人員使用PowerBuilder去開發(fā)應(yīng)用程序,由于所開發(fā)的各種應(yīng)用程序充分利用了圖形用戶接口(GUI)的優(yōu)點,所以PowerBuilder被認為是一個圖形工具。
在客戶/服務(wù)器結(jié)構(gòu)的應(yīng)用中,PowerBuilder具有描述多個數(shù)據(jù)庫連接與檢索的能力。特別是PowerBuilder能從大多數(shù)流行的RDBMS中存取數(shù)據(jù),且不管數(shù)據(jù)存放在什麼地方;另外,各種應(yīng)用程序又可以獨立于RDBMS,因為PowerBuilder可以使用數(shù)據(jù)庫的標(biāo)準(zhǔn)操作語言SQL(結(jié)構(gòu)化查詢語言)進行。
使用PowerBuilder,可以很容易地開發(fā)出功能強大的圖形界面的訪問服務(wù)器數(shù)據(jù)庫的應(yīng)用程序,PowerBuilder提供了建立符合工業(yè)標(biāo)準(zhǔn)的應(yīng)用程序(例如訂單登記、會計及制造系統(tǒng))所需的所有工具。
PowerBuilder應(yīng)用程序由窗口組成,這些窗口包含用戶與之交互的控件。開發(fā)人員可以使用所有標(biāo)準(zhǔn)空間(如按鈕、復(fù)選框、下拉式列表框或編輯框)以及PowerBuilder提供的特殊的使應(yīng)用程序更易于開發(fā)和使用的控件。
通常人們把PowerBuilder看成是一種開發(fā)工具,實際上它比其他工具強得多,是一種強有力的開發(fā)環(huán)境。開發(fā)人員不僅能用它來開發(fā)用戶容易使用的各種應(yīng)用程序還可以通過PowerBuilder修改數(shù)據(jù)庫,利用400多個內(nèi)部定義函數(shù),可以開發(fā)能和其他應(yīng)用程序進行的各種應(yīng)用程序。
PowerBuilder正在成為客戶/服務(wù)器應(yīng)用開發(fā)的標(biāo)準(zhǔn)。相對于其他任何客戶/服務(wù)器開發(fā)環(huán)境,PowerBuilder使開發(fā)人員的工作更快、成本更低、質(zhì)量更高、功能更強。
PowerBuilder為應(yīng)用開發(fā)提供了全面綜合性的支持,可以分別概括為如下幾點:
事件驅(qū)動的應(yīng)用程序
功能強大的編程語言與函數(shù)
面向?qū)ο蟮木幊?/p>
跨平臺開發(fā)
開放的數(shù)據(jù)庫連結(jié)系統(tǒng)
PowerBuilder開發(fā)環(huán)境
PowerBuilder開發(fā)環(huán)境由一系列集成的圖形畫板(Painter)組成,應(yīng)用開發(fā)人員通過簡單的鼠標(biāo)操作即可設(shè)計、建立、交互檢驗和測試客戶/服務(wù)器應(yīng)用程序。
Delphi簡介
Delphi這個名字源于古希臘的城市名。它集中了第三代語言的優(yōu)點。以O(shè)bject Pascal為基礎(chǔ),擴充了面向?qū)ο蟮哪芰?,并且完美地結(jié)合了可視化的開發(fā)手段。Delphi自1995年3 月一推出就受到了人們的關(guān)注,并在當(dāng)年一舉奪得了多項大獎。
Delphi的出現(xiàn)打破了V承可視化編程領(lǐng)域一統(tǒng)天下的局面。并且Delphi使用了本地編譯器直接生成技術(shù),使程序的執(zhí)行性能遠遠高于其它產(chǎn)品生成的程序。它還是真正的面向?qū)ο蟮木幊陶Z言。PASCAL語言的嚴謹加上可視化的優(yōu)勢和強大的數(shù)據(jù)庫功能使得它有充分的資本和微軟的VB叫板。許多人當(dāng)時都認為Pascal 是最有前途的程序設(shè)計語言,并預(yù)測Delphi將會成為可視化編程的主流環(huán)境。
Delphi在你編好程序后自動轉(zhuǎn)換成.EXE文件它運行時速度比VB快,而且編譯后不需要其他的支持庫就能運行。它的數(shù)據(jù)庫功能也挺強的,是開發(fā)中型數(shù)據(jù)庫軟件理想的編程工具。 Delphi適用于應(yīng)用軟件、數(shù)據(jù)庫系統(tǒng)、系統(tǒng)軟件等類型的開發(fā)。而且它擁有和VB差不多一樣的功能,而且一樣能應(yīng)用API函數(shù),這在控制Windows很有用。
Delphi是全新的可視化編程環(huán)境,為我們提供了一種方便、快捷的Windows應(yīng)用程序開發(fā)工具。它使用了Microsoft Windows圖形用戶界面的許多先進特性和設(shè)計思想,采用了彈性可重復(fù)利用的完整的面向?qū)ο蟪绦蛘Z言(Object-Oriented Language)、當(dāng)今世界上最快的編輯器、最為領(lǐng)先的數(shù)據(jù)庫技術(shù)。對于廣大的程序開發(fā)人員來講,使用Delphi開發(fā)應(yīng)用軟件,無疑會大大地提高編程效率,而且隨著應(yīng)用的深入,您將會發(fā)現(xiàn)編程不再是枯燥無味的工作——Delphi的每一個設(shè)計細節(jié),都將帶給您一份欣喜。
Delphi的基本形式
Delphi實際上是Pascal語言的一種版本,但它與傳統(tǒng)的Pascal語言有天壤之別。一個Delphi程序首先是應(yīng)用程序框架,而這一框架正是應(yīng)用程序的“骨架”。在骨架上即使沒有附著任何東西,仍可以嚴格地按照設(shè)計運行。您的工作只是在“骨架”中加入您的程序。缺省的應(yīng)用程序是一個空白的窗體(form),您可以運行它,結(jié)果得到一個空白的窗口。這個窗口具有Windows窗口的全部性質(zhì):可以被放大縮小、移動、更大最小化等,但您卻沒有編寫一行程序。因此,可以說應(yīng)用程序框架通過提供所有應(yīng)用程序共有的東西,為用戶應(yīng)用程序的開發(fā)打下了良好的基礎(chǔ)。
Delphi已經(jīng)為您做好了一切基礎(chǔ)工作——程序框架就是一個已經(jīng)完成的可運行應(yīng)用程序,只是不處理任何事情。您所需要做的,只是在程序中加入完成您所需功能的代碼而已。 在空白窗口的背后,應(yīng)用程序的框架正在等待用戶的輸入。由于您并未告訴它接收到用戶輸入后作何反應(yīng),窗口除了響應(yīng)Windows的基本操作(移動、縮放等)外,它只是接受用戶的輸入,然后再忽略。
個人建議 多去了解 Cisco 這個對搞網(wǎng)絡(luò)方面的人,不難理解它是什么 ,多去看看它的原文書籍,盡量看原文的,因為中文的翻譯版本不知道 什么時候才能出來,而且原文本 幾乎都是 英文版 所以要求 英語要有一定的理解能力和閱讀能力,推薦么,推薦LZ看看 《Cisco網(wǎng)絡(luò)之一階》《思科網(wǎng)絡(luò)學(xué)院教材》(共2大本)證書 可以去考 CCNA ND NP 以及 更高 IE ,如果不想考這些個,可以去考 軟考(計算機軟件水平考試)。最后祝您成功?。【W(wǎng)絡(luò)要帶著問題去實踐,你的疑惑就少了。加油!
我也是一個大學(xué)生 現(xiàn)在大三了 正面對著就業(yè)的難題。
對于你的提問,一樓的太瘋狂,可是有用的很少
1.建議你把.net做為主要學(xué)習(xí)目標(biāo)。它是一個用途很廣的語言。
P、ASP、PHP等主流網(wǎng)頁都是要學(xué)習(xí)的。
如果你只想學(xué)一門主流語言去面對社會,那就大錯鋒顫賣特錯了。
(現(xiàn)在的大學(xué)注重全面,讓學(xué)生可以勝任很多的職位,提高就業(yè)率。)
一門語言是無法再幾百萬甚至上千萬的就業(yè)者里面脫穎而出,找到
一個和適的崗位的。即使學(xué)好了幾門語言也不好找到一個好工作。
但機會是給有準(zhǔn)備的人的。
2.至于軟件編程語言,這個不用擔(dān)心。
學(xué).NET的時候用的是Visual Studio(vs?。?!我都想去玩了)
這個工具是必須學(xué)好的,以后包括數(shù)據(jù)庫都要用它
所以學(xué).net的時候?qū)Wc語言是事半功銀逗倍的(個人意見,高手勿罵)
3.如果你的意向是學(xué)網(wǎng)絡(luò)工程那~~~~~
DOS命令與服務(wù)器工作機制都是要精通的(這些我不會問高手去)
4.建議你在學(xué)習(xí)同時兼修FLASH與英語(說實話,我討厭這門語言)
陳旭大大的漢語言什么時候能出來啊~~~~~~
你學(xué)去吧,有問題洞羨在問我
說多了等于廢話,我就簡單跟你講講,我是學(xué)的數(shù)據(jù)庫專業(yè),你在網(wǎng)頁編程方面更好選擇ASP.NET,因為它有界面操作,好學(xué),另外它也是最新的,都是在ASP之后出來的。編程語言你還是選擇JAVA,這喚搭渣是目前更流行最實用的編程語言,很好就業(yè)只要你學(xué)的很精通。如果你學(xué)計算機專業(yè)肯定是要考證書的,這樣可以增加你就業(yè)的籌碼,考試可以考軟件設(shè)計師,網(wǎng)絡(luò)工程師,系統(tǒng)分析師等等,具體你可以到網(wǎng)和悄上看,一般考證書更好還是選擇希賽的資料再結(jié)合一些教學(xué)視頻非常好的。平時學(xué)習(xí)要一步一個枝睜腳印,記住最基礎(chǔ)的更具有遷移性,最基礎(chǔ)的更具有生命力
我也是一名大二的學(xué)生,不過學(xué)的是信息管理,也算是半個計算機專業(yè),我建議你要么學(xué)java,jsp等,要么學(xué)asp.net,php等等,.net應(yīng)該說是很有前途的,學(xué)的人相當(dāng)多,你宴純看圖書館里基則關(guān)于.net的書有多少就知道它有多流行了,至于編程語言,可以學(xué)搏祥棚學(xué)C#,也是目前很流行的語言,微軟的東西畢竟不會差到那里去的,只要還是要看個人興趣了,呵呵,祝你好運!
介意你學(xué)java 現(xiàn)在非常搜蔽檔流行 將來也是個趨勢 不光軟件 網(wǎng)頁 都可以用java
網(wǎng)絡(luò)嘛 要學(xué)好各種并握的協(xié)議 最重要的是交換機 路由器的配置和處理
c語言可以連接access數(shù)據(jù)庫??
#import “C:\program files\common files\system\ado\msado15.dll ” no_namespace rename( “EOF “, “adoEOF “)
//#import “c:\program files\common files\system\ado\msado15.dll ” rename ( “EOF “, “adoEOF “) no_namespace
#define CREATEiNSTANCE(sp,riid) { HRESULT _hr =sp .CreateInstance( __uuidof( riid ) ); \
if (FAILED(_hr)) _com_issue_error(_hr); }
#define RsITEM(rs,x) ((rs-> Fields-> Item-> Value))
class CHmbAdoDB
{
public:
BOOLm_bOpen;
_ConnectionPtr m_DbConn;
CString m_ErrMsg;
CString m_SQLState;
long mSqlCode;
public:
void Cancel();
BOOL IsOpen();
void RollbackTrans();
void CommitTrans();
long BeginTrans();
void Close();
BOOL Open(LPCSTR lpszConnect);
BOOL Execute(LPCTSTR lpSQL);
void ProviderError();
CHmbAdoDB()
{
}
virtual ~CHmbAdoDB()
{
}
};
class CHmbAdoDBRs : public CObject
{
public:
_RecordsetPtr m_Rs;
public:
CHmbAdoDBRs();
virtual ~CHmbAdoDBRs();
BOOL Open( CHmbAdoDB *pDB, LPCSTR szSource,long option=-1);
void Close();
void GetRs(_variant_t x,_bstr_t &ret);
void GetRs(_variant_t x,CString &ret);
BOOL IsEOF();
BOOL IsOpen();
BOOL MoveNext();
BOOL MovePrev();
BOOL MoveFirst();
BOOL MoveLast();
};
#endif // !defined(AFX_RfidAdoDB_H__7C539954_1C62_47B6_AB6E_1A5BB73A67E5__INCLUDED_) truct InitOle
{
InitOle() { ::CoInitialize(NULL); }
~InitOle() { ::CoUninitialize(); }
} _init_InitOle_;
long mSqlCode;
BOOL CHmbAdoDB::Open(LPCSTR lpszConnect)
{
try
{
CREATEiNSTANCE(m_DbConn,Connection);
m_DbConn-> Open(lpszConnect, ” “, ” “, adModeUnknown );
}
catch( _com_error &e)
{
return FALSE;
}
catch(…)
{
return FALSE;
}
return TRUE;
}
void CHmbAdoDB::Close()
{
if( IsOpen() )
{
m_DbConn-> Close();
}
}
long CHmbAdoDB::BeginTrans()
{
return m_DbConn-> BeginTrans();
}
void CHmbAdoDB::CommitTrans()
{
m_DbConn-> CommitTrans();
}
void CHmbAdoDB::RollbackTrans()
{
m_DbConn-> RollbackTrans();
}
void CHmbAdoDB::Cancel()
{
m_DbConn-> Cancel();
}
BOOL CHmbAdoDB::IsOpen()
{
return ( (m_DbConn-> GetState() != 0) ? TRUE : FALSE );
}
BOOL CHmbAdoDB::Execute(LPCTSTR lpSQL)
{
if (!IsOpen())
{
AfxMessageBox( “Network error, Database do not open. “);
return FALSE;
}
CString strSQL(lpSQL);
strSQL.TrimLeft();
strSQL.TrimRight();
try
{
m_DbConn-> Execute(_bstr_t(strSQL), NULL, adExecuteNoRecords);
}
catch( _com_error &e)
{
return FALSE;
}
catch(…)
{
return FALSE;
}
return TRUE;
}
void CHmbAdoDB::ProviderError()
{
// Print Provider Errors from Connection object.
// pErr is a record object in the Connection ‘s Error collection.
ErrorPtr pErr = NULL;
if( (m_DbConn-> Errors-> Count) > 0)
{
long nCount = m_DbConn-> Errors-> Count;
// Collection ranges fromto nCount -1.
for(long i = 0; i Errors-> GetItem(i);
mSqlCode = pErr-> NativeError;
m_ErrMsg.Format( “SQLCODE : %ld\t%s “,mSqlCode, LPCTSTR(pErr-> Description));
m_SQLState.Format( “%s “,(char*)pErr-> SQLState);
printf( “%s // %s\n “,m_SQLState,m_ErrMsg);
}
}
m_DbConn-> Errors-> Clear();
}
CHmbAdoDBRs::CHmbAdoDBRs( )
{
}
CHmbAdoDBRs::~CHmbAdoDBRs()
{
}
BOOL CHmbAdoDBRs::Open( CHmbAdoDB *pDB, LPCSTR szSource,long option )
{
CString strSQL;
strSQL = CString(szSource);
strSQL.TrimLeft();
strSQL.TrimRight();
_variant_t vRecsAffected(0L);
//CREATEiNSTANCE( m_Rs,Recordset) ;
//m_Rs-> PutRefActiveConnection( pDB-> m_DbConn );
try
{
m_Rs = pDB-> m_DbConn-> Execute(_bstr_t(strSQL),
&vRecsAffected,
adOptionUnspecified);
m_Rs-> AddRef();
// m_Rs-> Open(szSource, vtMissing, adOpenKeyset, adLockBatchOptimistic, adOptionUnspecified);
// m_Rs-> Open(szSource, vtMissing, adOpenKeyset, adLockReadOnly, option);
// m_Rs-> Open(szSource,pDB-> m_DbConn.GetInterfacePtr(),adOpenDynamic,adLockOptimistic, adCmdText);
}
catch( _com_error &e)
{
//ErrorMessage();
m_Rs-> Close();
m_Rs-> Release();
return FALSE;
}
catch(…)
{
m_Rs-> Close();
m_Rs-> Release();
return FALSE;
}
return TRUE;
}
void CHmbAdoDBRs::Close()
{
m_Rs-> Close();
m_Rs-> Release();
}
void CHmbAdoDBRs::GetRs(_variant_t x,_bstr_t &ret)
{
ret = (m_Rs-> Fields-> Item-> Value);
}
void CHmbAdoDBRs::GetRs(_variant_t x,CString &ret)
{
_bstr_t retVal;
try{
retVal = (m_Rs-> Fields-> Item-> Value);
}
catch(…){
ret = ” “;
return;
}
ret = CString((char*) retVal);
}
BOOL CHmbAdoDBRs::IsEOF()
{
return m_Rs-> adoEOF;
}
BOOL CHmbAdoDBRs::IsOpen()
{
return ( (m_Rs-> GetState() != 0) ? TRUE : FALSE );
}
BOOL CHmbAdoDBRs::MoveNext() { return (FAILED(m_Rs-> MoveNext()) ? FALSE : TRUE ); }
BOOL CHmbAdoDBRs::MovePrev() { return (FAILED(m_Rs-> MovePrevious()) ? FALSE : TRUE ); }
BOOL CHmbAdoDBRs::MoveFirst() { return (FAILED(m_Rs-> MoveFirst()) ? FALSE : TRUE ) ; }
BOOL CHmbAdoDBRs::MoveLast() { return (FAILED(m_Rs-> MoveLast()) ? FALSE : TRUE ) ; }
以上為一個ADO的封裝類.
c語言如何連接access數(shù)據(jù)庫
關(guān)于c 訪問多種數(shù)據(jù)庫的介紹到此就結(jié)束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關(guān)注本站。
創(chuàng)新互聯(lián)服務(wù)器托管擁有成都T3+級標(biāo)準(zhǔn)機房資源,具備完善的安防設(shè)施、三線及BGP網(wǎng)絡(luò)接入帶寬達10T,機柜接入千兆交換機,能夠有效保證服務(wù)器托管業(yè)務(wù)安全、可靠、穩(wěn)定、高效運行;創(chuàng)新互聯(lián)專注于成都服務(wù)器托管租用十余年,得到成都等地區(qū)行業(yè)客戶的一致認可。
網(wǎng)站題目:C語言實現(xiàn)數(shù)據(jù)庫多樣性訪問(c訪問多種數(shù)據(jù)庫)
網(wǎng)站鏈接:http://www.5511xx.com/article/djpcgps.html


咨詢
建站咨詢
