linux c语言连接mysql

ubuntu下使用apt-get安装mysql:

1 sudo apt-get install mysql-server

2 sudo apt-get install mysql-client

3 sudo apt-get install libmysqlclient-dev

 

安装过程中会提示输入创建root用户的密码,是mysql的root用户而不是linux的root用户。

 

安装完成后可在命令行登陆mysql:

1 $ mysql -u root -p

 

查看数据库,选择数据库mysql,查看表:

1 mysql> show databases;

2 mysql> use mysql;

3 mysql> show tables;

 

然后将以下代码复制到mysql_tmp.cpp并保存:

 1 #include <mysql/mysql.h>

 2 #include <stdio.h>

 3 #include <stdlib.h>

 4 int main() 

 5 {

 6     MYSQL *conn;

 7     MYSQL_RES *res;

 8     MYSQL_ROW row;

 9     char server[] = "localhost";

10     char user[] = "root";

11     char password[] = "root's passwd";

12     char database[] = "mysql";

13     

14     conn = mysql_init(NULL);

15     

16     if (!mysql_real_connect(conn, server,user, password, database, 0, NULL, 0)) 

17     {

18         fprintf(stderr, "%s\n", mysql_error(conn));

19         exit(1);

20     }

21     

22     if (mysql_query(conn, "show tables")) 

23     {

24         fprintf(stderr, "%s\n", mysql_error(conn));

25         exit(1);

26     }

27     

28     res = mysql_use_result(conn);

29     

30     printf("MySQL Tables in mysql database:\n");

31     

32     while ((row = mysql_fetch_row(res)) != NULL)

33     {

34         printf("%s \n", row[0]);

35     }

36     

37     mysql_free_result(res);

38     mysql_close(conn);

39     

40     printf("finish! \n");

41     return 0;

42 }

其中代码11行处改为设置的mysql的root用户密码。

 

编译链接执行:

1 $ g++ -c mysql_tmp.cpp

2 $ g++ mysql_tmp.o -o mysql_tmp -lmysqlclient

3 $ ./mysql_tmp

 也可以编译链接一步:

1 $ g++ mysql_tmp.cpp -o mysql_tmp -lmysqlclient

2 $ ./mysql_tmp

 

你可能感兴趣的:(linux)