• Linux下安装MySQL数据库以及用C语言编程存取数据库


      ubuntu下安装软件相当简单,一条简单的 apt-get install 就可以解决,相比源码安装方式唯一的缺点就是,你无法自定义软件的安装目录。不过这也不是什么太大的缺点。下面我们就用 apt-get 工具来安装MySQL数据库。

    安装之前先查看一下系统是否已经安装过MySQL了。如下如:

    上图显示的结果表明,你的系统没有安装MySQL。下面执行 apt-get install mysql-server mysql-client进行安装。如下图:

    输入 y 进行安装,之后会弹出一个界面要求输入MySQL管理员root的密码,之后再次确认。如下图:

    然后系统会自动安装MySQL直到完成。

    安装完成后,我们可以再次通过 netstat -tap | grep mysql 来查看系统是否已经有了 mysql 服务,如下图:

    出现上面的信息,说明我们安装MySQL成功。系统每次启动时,都会自动开启mysql服务。我们也可以用service命令来手动开启或关闭mysql服务(前提是我们具有管理员权限),如下所示:

    service mysql start

    service mysql stop

    service mysql restart

    mysql 的配置文件在 /etc/mysql/my.cnf  这里就不介绍配置了。这里唯一需要说的是,mysql5.5版本的字符集设置问题,从下面的图也可以看到,character_set_database和character_set_server这两个的字符集默认是latin1,这是西方国家使用的字符集,不能显示汉字。因此,我们需要在配置文件中设置一下字符集。vim /etc/mysql/my.cnf打开配置文件,找到 [mysqld]节,添加 character-set-server=utf8保存即可。因为客户端的字符集默认是utf8,所以只用修改一下服务端就可以了。

    登录数据库命令:mysql -u root -p 回车后,输入我们前面所设的MySQL管理员密码,就可以成功登录了。如图:

    如果要查看数据库使用的字符集,可以输入 show variables like 'character%';  如图:

    如果要更改这些,在配置文件 my.cnf 里更改即可。

    至此,安装mysql成功。

    下面介绍 mysql 的几个常用命令:

        显示数据库列表:   show databases;
        切换一个数据库:   use  "db_name";
        查询数据库中的表: show tables;  (先选择一个数据库之后再查询表)
        显示某个表创建时的信息:show create table "table_name";
        查看表的字段信息及属性:describe "table_name";    desc "table_name";
     查看数据库运行环境信息:status;

        创建一个数据库: create database [if not exists] "db_name";
        删除一个数据库: drop database [if exists] "db_name";

        创建一个数据表: create table "table_name" (字段代号 字段类型,...);
        删除一个数据表: drop table "table_name";

        向表中插入记录: insert into "table_name" [(字段1,字段2,...)] values (值1,值2,...);
        删除表中的记录: delete from "table_name" where nid=100;
        更新表中的记录: update "table_name" set level=2,salary=2000.0 where 条件
        查询表中的数据: select * from "table_name";
                      select 字段1,字段2 from "table_name";

    接下来,说说怎么用C语言编程来操作数据库:

    开发C程序的时候,我们需要 mysql.h 这个头文件。前面我们安装的数据库并不包含这个头文件,我们如果需要开发应用程序的话,必须再安装一个开发包,名字为 libmysqlclient-dev。如下操作:

    至此,我们就可以用C语言开发应用程序了。需要操作数据库的话,只需包含 mysql.h 这个头文件。

    下面给出一个简单的操作数据库的C语言代码示例:

     1 /* Simple C program that connects to MySQL Database server */
     2 #include <stdio.h>
     3 #include <mysql.h>
     4 #include <stdlib.h>
     5 
     6 int main(void)
     7 {
     8     MYSQL        *conn;
     9     MYSQL_RES    *res;
    10     MYSQL_ROW    row; 
    11 
    12     char *server = "localhost";
    13     char *user = "root";
    14     char *password = "12345";
    15     char *database = "mysql";
    16 
    17     conn = mysql_init(NULL);
    18 
    19     /* Connect to database */
    20     if (!mysql_real_connect(conn, server, user, password, database, 0, NULL, 0)) {
    21             fprintf(stderr, "%s
    ", mysql_error(conn));
    22             exit(1);
    23     }
    24 
    25     /* send SQL query */
    26     if (mysql_query(conn, "show tables")) {
    27             fprintf(stderr, "%s
    ", mysql_error(conn));
    28             exit(1);
    29     }
    30 
    31     res = mysql_use_result(conn);
    32 
    33     /* output table name */
    34     printf("MySQL Tables in mysql database:
    ");
    35     while ( (row = mysql_fetch_row(res)) != NULL)
    36             printf("%s 
    ", row[0]);
    37 
    38     /* close connect */
    39     mysql_free_result(res);
    40     mysql_close(conn);
    41 }
    View Code

    编译的时候,使用如下代码:

    gcc $(mysql_config --cflags)  xxx.c -o xxx $(mysql_config --libs)

    本程序会连接本地数据库mysql,然后输出数据库 mysql 中包含的所有表信息。注意gcc的参数顺序。

  • 相关阅读:
    传中文参数问题
    关于showModalDialog()弹出窗口.更改了页面的数据,再次点击页面却没有刷新
    ListView 中的一个低级 BUG
    Oracle SQLCODE/SQLERRM
    IE框架中访问不同域的网页遇到的问题
    JS代码收藏大全
    2006年终总结
    看来,你想成为一名DBA……
    将ViewState持久化保持在服务器端
    oraclemerge用法详解
  • 原文地址:https://www.cnblogs.com/champ/p/3384219.html
Copyright © 2020-2023  润新知