Linux下C语言连接MySQL

WBOY
リリース: 2016-06-07 17:34:12
オリジナル
1029 人が閲覧しました

首先保证安装: 1:安装MySQL:sudo apt-get install mysql-server mysql-client 2:安装MySQL开发包:sudo apt-get install li

首先保证安装: 

1:安装MySQL:sudo apt-get install mysql-server mysql-client

2:安装MySQL开发包:sudo apt-get install libmysqlclient15-dev

此时需要用到的头文件会出现在/usr/include/mysql/里

C语言连接MySQL数据库

此包含两个步骤:

1. 使用函数mysql_init初始化一个连接句柄结构.

mysql_init的函数定义如下:

MYSQL * mysql_init(MYSQL *);

通常传递NULL给这个例程,他会返回一个指向新分配的连接句柄结构的指针。如果传递一个已有的结构,它将会重新初始化。这个例程在出错时返回NULL.

2. 实际进行连接

目前只是分配和初始化了一个结构,仍然需要使用mysql_real_connect来向一个连接提供参数,

mysql_real_connect的函数定义:

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);

指针connection必须指向已经被mysql_init初始化过的结构。

注意server_host既可以是主机名,也可以是IP地址。如果连接本地,可以制定localhost来优化。

sql_user_name和sql_password的含义和它们的字面意思一样。如果登录名为NULL,则假设登录名为当前Linux用户的登录ID,如果密码为NULL,则假设密码为空。

port_number和unix_socket_name应该分别为0和NULL,,除非你改变了MySQL安装的默认设置。他们将默认使用合适的值。

最后,flags参数用来对一些定义的位模式进行OR操作,使得改变使用协议的某些特性。

如果无法连接,则返回NULL。mysql_error函数可以提供有帮助的信息。

linux

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート