當前位置:首頁 » 編程語言 » sql跟c語言
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

sql跟c語言

發布時間: 2022-07-20 11:28:15

sqlc語言

准確的說SQL是一個資料庫查詢語句, SQL SERVER這個才是資料庫。
一般所說的客戶端伺服器,就是C/S架構的系統,那麼服務端就是資料庫後台了。
使用編程語言,如C語言 C++,然後編寫代碼連接,操控資料庫。

② c語言和SQL的比較

說說C語言:
我學過C語言,它只能編寫DOS程序,功能不是很強大,但卻是基礎,因為大部分流行的編程軟體都與C語言的語法結構類似,一定要先學。

C++:
C語言進化而來的,有強大的功能,舉例吧:
軟體:
微軟的Office系列
Macromedia網頁三劍客 - flash,dreamweaver,fireworks
Adobe出的 超有名的作圖軟體 - PhotoShop
3D動畫軟體 - 3DMax
.....
游戲:
PC平台幾乎所有的游戲
星際爭霸、魔獸爭霸、CS、帝國時代、跑跑卡丁車、傳奇、魔獸世界....
那數不勝數了,自己數吧:)
以上均出自C++之手,原因是C++靠近計算機底層,編寫出來的程序對系統資源依賴較小,功能強大,運行速度快,比如你的兩個朋友與你分別玩 用 VB、Java、與C++編寫的「跑跑卡丁車」,你玩C++那款游戲已經跑玩結束了,發現你的兩個朋友還沒開始跑呢,那是相當的卡啊,所以這一系列的軟體、游戲都會採用C++編寫。
雖然C++很有優點,但是對於學習者來說應該是比較困難的一門語言。(再說明一點,C或C++屬於語言,而VC - 「Visual C++」是用來編寫C或C++的工具)

說說SQL:

SQL是結構化查詢語言(STRUCTURED QUERY LANGUAGE),它是一組專用的程序命令,可完成如下任務:
在一個或多個資料庫的一個或多個表中檢索數據.
通過插入,刪除或更改記錄操縱表中數據.
對表的數據進行數學統計.
創建,更改或刪除資料庫中的表(僅ACCESS資料庫)
創建或刪除表中的索引.
SQL查詢語言主要結構為:
Select 查詢欄位 from 表名 Where 查詢條件語句 [排序語句或分組語句]
查詢欄位必須分別用(西文)逗號分開或就用一個*號代替.
僅供參考.

③ 過程化SQL和C語言中的變數定義有什麼區別嗎

變數定義:用於為變數分配存儲空間,還可為變數指定初始值。程序中,變數有且僅有一個定義。
變數聲明:用於向程序表明變數的類型和名字。
區別:
定義也是聲明,extern聲明不是定義。定義分配存儲空間,而聲明不會。通過使用extern關鍵字聲明變數名而不定義它。 事實上它只是說明變數定義在程序的其他地方。程序中變數可以聲明多次,但只能定義一次。
只有當聲明也是定義時,聲明才可以有初始化式,因為只有定義才分配存儲空間。
例如:extern int a其中變數a是在別的文件中定義的。前者是"定義性聲明(defining declaration)"或者稱為"定義(definition)",而後者是"引用性聲明(referncing declaration)"。

④ SQL語言有什麼作用它與C語言有什麼異同點。

SQL既結構化查詢語言,是一種關系型資料庫.作用和ORACLE,DB2,MYSQL類似.
作用:存儲數據,查詢數據.處理數據.
C語言是一種過程性語言,是從事系統軟體和游戲軟體開發的語言,現在主要是用VC++,它也可以從事手機系統開發,像塞班系統就是VC開發的.
SQL是一種非過程化語言,你只用下命令,不用說明怎麼做,軟體幫你解決.而C語言是過程化語言,你不僅要下命令,還要說明怎麼做,難度遠遠大於SQL.

⑤ 什麼是C語言,SQL語言。那個更重要啊

要回答這個問題,首先要說到「面向過程的編程語言」、「面向對像的編程語言」、「結構化查詢語言」。
事實上這三種是完全不同的概念。舉個「1+1=2」這個等式的例子。「面向過程的編程語言」應理解為整個等式從形成到完成的過程,如1+1為什麼等於2,還有等於2的答案嗎?除了1+1還有沒有其它的方法,像0+2或0.5+1.5等等。說專業一點,學面向過程主要是學「演算法」以提高運算效率;「面向對像的編程語言」應理解為如何去把「1+1=2」這個等式「可視化」給大家看,也就是說這個等式是由五個「對像」:「1」、「+」、「1」、「=」和「2」組成。說專業一點,學面對像主要是從如何應用對像設計用戶界面學起;「結構化查詢語言」的理解最特別,對於我這個從面向過程學到面向對象的人剛開始很不適應。因為,它解決是等式完成的過程。你不需要理會這等式是怎麼形成和運算出來的,就是要它一個結果。如上面,你可以給電腦一個指令說,我要結果等於2.他就會把所以結果等於2的等式都給你。綜上所述,這三種語言都要學。面向過程是學演算法以提高效率,面向對像是學用戶界面的呈現,而結構化查詢是為了方便數據的處理。

⑥ c語言怎麼與SQL相連

先安裝SQL Server,在SQL Server中創建資料庫,然後編寫C代碼訪問SQL Server,即可實現相連。

⑦ 關於C語言連接SQL資料庫…

1、配置ODBC數據源。
2、使用SQL函數進行連接。
對於1、配置數據源,配置完以後就可以編程操作資料庫了。
對於2、使用SQL函數進行連接,參考代碼如下:

#include<windows.h>
#include<sql.h>
#include<sqlext.h>
void main()
{
HENV henv; //環境句柄
HDBC hdbc; //數據源句柄
HSTMT hstmt; //執行語句句柄
unsigned char datasource[]="數據源名稱"; //即<a href="https://www..com/s?wd=ODBC&tn=44039180_cpr&fenlei=_5y9YIZ0lQzqlpA-" target="_blank" class="-highlight">ODBC</a>源中設置的源名稱
unsigned char user[]= "用戶名"; //資料庫的帳戶名
unsigned char pwd[]= "密碼"; //資料庫的密碼
unsigned char search[]="select xm from stu where xh=0";
SQLRETURN retcode; //記錄各SQL函數的返回情況
// 分配環境句柄
retcode= SQLAllocEnv(&henv); // 等介於 SQLAllocHandle(SQL_HANDLE_ENV, SQL_<a href="https://www..com/s?wd=NULL&tn=44039180_cpr&fenlei=_5y9YIZ0lQzqlpA-" target="_blank" class="-highlight">NULL</a>_HANDLE, &henv);
// 設置ODBC環境版本號為3.0
retcode= SQLSetEnvAttr(henv, SQL_ATTR_ODBC_VERSION, (void*)SQL_OV_ODBC3, 0);
// 分配連接句柄
retcode= SQLAllocConnect(henv,&hdbc); // 等介於 SQLAllocHandle(SQL_HANDLE_DBC, henv, &hdbc);
//設置連接屬性,登錄超時為*rgbValue秒(可以沒有)
// SQLSetConnectAttr(hdbc, SQL_LOGIN_TIMEOUT, (SQLPOINTER)(rgbValue), 0);

//直接連接數據源
// 如果是windows身份驗證,第二、三參數可以是<a href="https://www..com/s?wd=NULL&tn=44039180_cpr&fenlei=_5y9YIZ0lQzqlpA-" target="_blank" class="-highlight">NULL</a>,也可以是任何字串
//SQL_NTS 即 "<a href="https://www..com/s?wd=Null&tn=44039180_cpr&fenlei=_5y9YIZ0lQzqlpA-" target="_blank" class="-highlight">Null</a>-Terminated String"
retcode= SQLConnect(hdbc,datasource, SQL_NTS, user, SQL_NTS , pwd, SQL_NTS );
//分配語句句柄
retcode= SQLAllocStmt(hdbc,&hstmt); // 等介於 SQLAllocHandle(SQL_HANDLE_STMT, hdbc, &hstmt);
//直接執行查詢語句
retcode=SQLExecDirect(hstmt,search,SQL_NTS);
//將數據緩沖區綁定資料庫中的相應欄位(i是查詢結果集列號,queryData是綁定緩沖區,BUFF_LENGTH是緩沖區長度)
SQLBindCol(hstmt, i, SQL_C_CHAR, queryData[i-1], BUFF_LENGTH, 0);
//遍歷結果集到相應緩沖區 queryData
SQLFetch(hstmt);
/*
*對遍歷結果的相關操作,如顯示等
*/
//注意釋放順序,否則會造成未知錯誤!
SQLFreeHandle(SQL_HANDLE_STMT, hstmt);
SQLDisconnect(hdbc);
SQLFreeHandle(SQL_HANDLE_DBC, hdbc);
SQLFreeHandle(SQL_HANDLE_ENV, henv);
}

代碼看上去很復雜,其實都可以直接復制。其中需要改的是數據源名稱、資料庫用戶名、資料庫密碼和SQL語句。
然後就是SQLFetch後得到結果集後,如何使用的問題了。
在下面的注釋部分 填寫你的處理代碼即可。

/*
*對遍歷結果的相關操作,如顯示等
*/

⑧ SQL就是C語言嗎兩者有什麼區別

不是,SQL是資料庫,C是編程語言。不是一個概念

⑨ SQL資料庫怎麼和C語言聯系

連接到SAMPLE資料庫,查詢LASTNAME為JOHNSON的FIRSTNAME信息。
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "util.h"
#include <sqlca.h>``
EXEC SQL INCLUDE SQLCA;

main()
{
EXEC SQL BEGIN DECLARE SECTION;

char firstname[13];
char userid[9];
char passwd[19];
EXEC SQL END DECLARE SECTION;
EXEC SQL CONNECT TO sample;

EXEC SQL SELECT FIRSTNME INTO :firstname

FROM employee
WHERE LASTNAME = 'JOHNSON';
printf( "First name = %s\n", firstname );
EXEC SQL CONNECT RESET;
return 0;
}
上面是一個簡單的靜態嵌入SQL語句的應用程序。它包括了嵌入SQL的主要部分:
(1)中的include SQLCA語句定義並描述了SQLCA的結構。SQLCA用於應用程序和資料庫之間的通訊,其中的SQLCODE返回SQL語句執行後的結果狀態。
(2)在BEGIN DECLARE SECTION和END DECLARE SECTION之間定義了宿主變數。宿主變數可被SQL語句引用,也可以被C語言語句引用。它用於將程序中的數據通過SQL語句傳給資料庫管理器,或從資料庫管理器接收查詢的結果。在SQL語句中,主變數前均有「:」標志以示區別。
(3)在每次訪問資料庫之前必須做CONNECT操作,以連接到某一個資料庫上。這時,應該保證資料庫實例已經啟動。
(4)是一條選擇語句。它將表employee中的LASTNAME為「JOHNSON」的行數據的FIRSTNAME查出,並將它放在firstname變數中。該語句返回一個結果。可以通過游標返回多個結果。當然,也可以包含update、insert和delete語句。
(5)最後斷開資料庫的連接。
從上例看出,每條嵌入式SQL語句都用EXEC SQL開始,表明它是一條SQL語句。這也是告訴預編譯器在EXEC SQL和「;」之間是嵌入SQL語句。如果一條嵌入式SQL語句佔用多行,在C程序中可以用續行符「\」。

⑩ 資料庫標准語言SQL和C語言、C++語言的關系是什麼

sql(
結構化查詢語言
),專門用在資料庫上。
c/c++是編程語言,c++是c的加強版,比c多了面向對象的東西,但可以兼容c