C語言中操作sqlserver資料庫案例教程

2022-09-24 22:21:18 字數 1434 閱讀 9913

本文使用c語言來對sql server資料庫進行操作,實現通過程式來對資料庫進行增刪改查操作。

作業系統:windows 10         實驗平台:vs2012  +  sql server 2008

odbc簡介:開放資料庫連線(open database connectivity,odbc),主要的功能是提供了一組用於資料庫訪問的程式設計介面,其主要的特點是,如果應用程式使用odbc做資料來源,那麼這個應用程式與所使用的資料庫或資料庫引擎是無關的,為應用程式的跨平台和可移植奠定了基礎。

建立odbc資料來源:控制面板——管理工具——odbc資料來源(32位)

可以看到,這裡存在三種型別的dsn(資料來源名),其中:

使用者dsn程式設計客棧:只允建立該dsn的使用者使用該資料來源;

系統dsn:所有登陸該伺服器的使用者都能使用該資料來源;

檔案dsn:配置資訊儲存在檔案中,所有登陸的使用者均可使用;

在本實驗中,採用系統dsn:

點選新增,然後選擇sql server

然後輸入資料來源的名稱和所在伺服器,我們的資料庫是安裝在本機上的。

選擇以sql server使用者的方式進行驗證,下圖所示:

這裡可以設定預設連線的資料庫,保持不變,使用master作為預設的資料庫。

然後點選下一步,然後完成,完成後可以測試一下。

這就完成了odbc資料來源的建立。

程式測試,資料庫中已包含乙個叫做stu_info的資料庫,且其中有一張student的學生資訊表,其包含的字段資訊如下:

程式設計如下

#include

#include

#include

#include

#include

int main()

ret=sqlallochandle(sql_handle_stmt,hdbc,&hstmt);

/*執行sql語句*/

sqlchar sql1="use stu_info";

sqlchar sql2="select * from student";

ret=sqlexecdirect(hstmt,sql1,sql_nts);

ret=sqlexecdirect(hstmt,sql2,sql_nts);

if(ret==sql_success || ret==sql_success_with_info) }

sqlfreehandle(sql_handle_dbc,hdbc);//釋放連線控制代碼

sqlfreehandle(sql_handle_env,henv);//釋放環境句程式設計客棧柄

return 0;

}需要說明的是,在多數環境中,**會報錯,報錯資訊如下:(sqlchar*)無法與(sqlwchar*)相容,於是有人可能會想到,直接強轉為(sqlwchar*),但是依然在sqlconnect函式處報錯,無法連線上資料庫,這時需要修改字符集,配置為多位元組字符集,操作如下:

C語言中移位操作

先要了解一下c語言裡所有的位運算都是指二進位制數的位運算。即使輸入的是十進位制的數,在記憶體中也是儲存為二進位制形式。用法 格式是 a 0。功能 將整型數a按二進位制位向左移動m位,高位移出後,低位補0。用法 格式是 a m,a和m必須是整型表示式,要求m 0。功能 將整型數a按二進位制位向右移動m...

C語言中位操作

0 0 0 0 1 0 1 0 0 1 1 1 0 0 0 0 1 1 1 0 1 1 1 1 1.不改變其他位的值的狀況下,對某幾個位進行設值。先對需要設定的位用 操作符進行清零操作,然後用 操作符設值。比如我要改變 gpioa 的狀態,可以先對暫存器的值進行 清零操作 gpioa crl 0xf...

C語言中的移位操作

c語言中的移位操作,內容不多。不過有些地方你不注意,就疏忽了。先做兩個小題先。1 unsigned char x 3 x 1是多少?x 1是多少?2 char x 3 x 1是多少?x 1是多少?3 char x 3 x 1是多少?x 1是多少?3寫成二進位制數是00000011 3寫成二進位制數是...