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程序中可以用续行符“\”。
温馨提示:内容为网友见解,仅供参考
第1个回答  2015-10-29
举个例子,连接SQL:
  // 打开数据库
  strDBClass.Format(_T("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=%s;Jet OLEDB:Database Password=%s"), m_strUnEntryptMdbFilePath,m_strMDBPassword);
  // 创建连接
  HRESULT hr = m_pConnection.CreateInstance(_uuidof(Connection));
  _ConnectionPtr m_pConnection->Open(m_strDBClass,_T(""),_T(""),adConnectUnspecified);
  // 声明表单指针
  _RecordsetPtr pBandRecordset;
  pBandRecordset.CreateInstance(__uuidof(Recordset));
  // 执行语句
  CString strSQL(L"SELECT * FROM [Band]");
  m_pConnection->Execute((LPCTSTR)strSQL,NULL,0);
  // 提取某一项 例如BandInfo
  int iBandInfo = wcscmp(colum, L"BandInfo");
  while(!recordsetPtr->adoEOF)
  {
  var = recordsetPtr->GetCollect(colum);
  if(var.vt != VT_NULL)
  strName = (LPCSTR)_bstr_t(var);
  recordsetPtr->MoveNext();
  }
第2个回答  2013-10-29
调用数据库的库函数对数据库进行访问

c#怎么和sql数据库连接
1、打开Visual Studio 2008工具,点击文件菜单,选择新建下面的项目选项,如下图所示。2、在弹出的新建项目界面,选择控制台程序,然后点击确定按钮,如下图所示。3、在Program.cs界面中引入SqlClient命名空间,这个空间里包含了所有的操作SQL SERVER的功能,如下图所示。4、接下来实例化SqlConnection,然后...

关于C语言连接SQL数据库…
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);\/ 对遍历...

C语言怎样连接SQLserver?
使用c语言连接sqlserver需要进行以下操作。1、安装本机环境:这里以sql2008r2+vs2010为例。先在本机安装sql2008r2,再安装vs2010。安装完成以后可以进去我的电脑-管理-服务找到sqlserver服务是否安装成功并启动。2、配置本机数据连接:(1)点击电脑左下角的开始-控制面板-管理工具-数据源(ODBC)。(2)...

C语言怎么通过ADO连接SQLserver数据库(举出至少三种在ADO中连接数据库...
举个例子,连接SQL:\/\/打开数据库 strDBClass.Format(_T("Provider=Microsoft.Jet.OLEDB.4.0;DataSource=%s;JetOLEDB:DatabasePassword=%s"),m_,m_);\/\/创建连接 HRESULThr=m_pConnection.(_uuidof(Connection));_m_pConnection-<Open(m_strDBClass,_T(""),_T(""),);\/\/声明表单指针 _;....

数据库标准语言SQL和C语言、C++语言的关系是什么?
没有直接关系。 SQL语句可以嵌入到C或C++中,实际上,即使是这种嵌入,他们也和C和C++没什么直接关系。 这些SQL语句最终还是要传到数据库引擎里,由数据库引擎完成相关操作。

C语言与数据库的关系
C语言是一门编程语言,而数据库则是数据的集合。C语言是一门通用计算机编程语言,应用广泛,用它可以开发数据库管理软件,也可以通过C语言借助于SQL语句来操作数据库。数据库指的是以一定方式储存在一起、能为多个用户共享、具有尽可能小的冗余度的特点、是与应用程序彼此独立的数据集合。一般来数据库都...

C程序跟SQL有什么联系
SQL是数据查询语言 C是程序设计语言 C语言中能嵌入sql语句,进行数据库操作 在sql环境下不能运行C。但是利用proc可以使用C的编程思想

数据库标准语言SQL和C语言、C++语言的关系是什么?
sql(结构化查询语言 ),专门用在数据库上。c\/c++是编程语言,c++是c的加强版,比c多了面向对象的东西,但可以兼容c

如何用C语言操作sqlite3,一文搞懂
在C语言中操作SQLite3数据库,初学者应重点掌握一些基础函数,其余的会随着实践逐渐熟悉。本文将以"my.db"数据库和student表为例,讲解关键操作。首先,要创建student表,可以使用sqlite3_opensqlite3_close()函数打开数据库,然后执行SQL语句。例如,显示表中所有数据,可以借助sqlite3_get_table()函数:...

用C语言怎么实现与数据库的连接
intmain(){ MYSQL*conn;MYSQL_RES*res;MYSQL_ROWrow;char*server="localhost";\/\/本地连接 char*user="root";\/\/ char*password="525215980";\/\/mysql密码 char*database="student";\/\/数据库名 char*query="select*fromclass";\/\/需要查询的语句 intt,r;conn=mysql_init(NULL);if(!mysql_real_...

相似回答