- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Linux程序设计环境
回顾
动态内存管理
文件锁定
dbm数据库
本章目标
使用C语言访问MySQL数据库
make命令和makefile文件
安装MySQL
常见的Linux发行版一般都包含了MySQL的预编译包,以Ubuntu为例:
1. 安装服务器
2. 安装客户端
3. 查看MySQL服务是否启动
sudo apt-get install mysql-server
sudo apt-get install mysql-client
sudo apt-get install libmysqlclient-dev
netstat -tap|grep mysql
建立和关闭连接
使用C语言连接MySQL数据库包含两个步骤:
1. 初始化一个连接句柄
2. 建立连接
#include mysql.h
MYSQL * mysql_init(MYSQL *);
MYSQL * mysql_real_connect(MYSQL *connection
const char *server_host,
const char *sql_user_name;
const char *sql_password;
const char *db_name;
unsigned int port_number,
const char *unix_socket_name,
unsigned int flags
);
void mysql_close(MYSQL * connection)
关闭连接
使用范例
1. 准备数据库
tie@localhost:~$ mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2
mysql GRANT ALL ON *.* TO tie@localhost IDENTIFIED BY test;
Query OK, 0 rows affected (0.01 sec)
mysql \q
Bye
tie@localhost:~$ mysql -u tie -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 3
mysql CREATE DATABASE foo;
Query OK, 1 row affected (0.01 sec)
mysql \q
Bye
使用范例
2. 创建表和添加数据
CREATE TABLE children (
childno int(11) NOT NULL auto_increment,
fname varchar(30),
age int(11),
PRIMARY KEY (childno)
);
INSERT INTO children(childno, fname, age) VALUES (2,Andrew,17);
INSERT INTO children(childno, fname, age) VALUES (3,Gavin,9);
INSERT INTO children(childno, fname, age) VALUES (4,Duncan,6);
INSERT INTO children(childno, fname, age) VALUES (5,Emma,4);
INSERT INTO children(childno, fname, age) VALUES (6,Alex,15);
INSERT INTO children(childno, fname, age) VALUES (7,Adrian,9);
使用范例
3. 使用C语言连接数据库和关闭连接
#include stdlib.h
#include stdio.h
#include mysql.h
int main(int argc, char *argv[]) {
MYSQL *conn_ptr;
conn_ptr = mysql_init(NULL);
if (!conn_ptr) {
fprintf(stderr, mysql_init failed\n);
return EXIT_FAILURE;
}
conn_ptr = mysql_real_connect(conn_ptr, localhost, tie, test,
您可能关注的文档
最近下载
- 13.劳动者之歌(课件)-2024冀美版美术六年级上册.pptx
- 思想道德与法治参考复习试题含答案.doc VIP
- L21ZJ118 真空绝热板外墙保温系统建筑构造.pdf VIP
- 陕2020TJ050- STP 建筑用真空绝热板保温系统构造图集.pdf VIP
- 徕卡TCA操作说明培训.docx
- 项目监理部管理制度范文.pdf VIP
- DB22_T 3650-2024 柞蚕术语DB22_T 3650-2024 柞蚕术语.pdf VIP
- 2025 离婚协议书【打印版】.pdf VIP
- DB33校园安全管理规范.pdf VIP
- DB31_T 310007-2021 DB33_T 310007-2021 DB32_T 310007-2021 DB34_T 310007-2021 设备泄漏挥发性有机物排放控制技术规范.docx VIP
原创力文档


文档评论(0)