青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

lynch

linux下使用mysql的C語言API

系統(tǒng)環(huán)境Ubuntu 12.04

1、安裝mysql 
   ubuntu下安裝mysql是比較簡單的,直接通過apt-get安裝
  1. sudo apt-get install mysql-server-5.5  
2、登入mysql
  1. mysql [-h host_name] [-u user_name] [-p password]
   其中參數(shù)-h后面要給出連接的數(shù)據(jù)庫的IP地址或者域名、參數(shù)-u后面要給出登錄的用戶名、參數(shù)-p表示登錄的密碼。
   有時連接本機默認的Mysql數(shù)據(jù)庫服務器,則可以直接在命令行中輸入如下簡寫形式(root用戶):
  1. mysql -u root -p
   之后,系統(tǒng)會提示你輸入root用戶的密碼
   
3、mysql的基本命令
   在mysql中,輸入help或者?命令,即可用查看mysql支持的內部操作命令。
   (1)顯示數(shù)據(jù)庫列表
      顯示數(shù)據(jù)庫列表命令比較簡單,直接輸入show databases;即可。
      
   (2)選擇一個數(shù)據(jù)庫
      選擇一個數(shù)據(jù)庫比較簡單,使用use dbname,其中dbname為要選擇的數(shù)據(jù)庫名字。比如,這里我們選擇test數(shù)據(jù)庫:
      
   (3)查看一個數(shù)據(jù)庫中的所有表
      通過show tables,可以查看一個數(shù)據(jù)庫中所有的數(shù)據(jù)庫表。

      查看Mysql表結構的命令,如下:

      show columns from 表名;
      describe 表名;
      desc 表名;
      show create table 表名;(查看create腳本)
   (4)退出
      簡單的命令,quit;
   需要注意的是,每個命令后面需要加上分號“;”,因為分號表示一個事務的結束。

    (5) mysqldump工具備份和恢復

 

         幾個常用用例:
         1.導出整個數(shù)據(jù)庫
          mysqldump -u 用戶名 -p 數(shù)據(jù)庫名 > 導出的文件名    
          mysqldump -u wcnc -p smgp_apps_wcnc > wcnc.sql
         2.導出一個表
          mysqldump -u 用戶名 -p 數(shù)據(jù)庫名 表名> 導出的文件名
          mysqldump -u wcnc -p smgp_apps_wcnc users> wcnc_users.sql
         3.導出一個數(shù)據(jù)庫結構
           mysqldump -u wcnc -p -d --add-drop-table smgp_apps_wcnc >/home/dk/wcnc_db.sql
          -d 沒有數(shù)據(jù) --add-drop-table 在每個create語句之前增加一個drop table 
         4.導入數(shù)據(jù)庫
           常用source 命令
           進入mysql數(shù)據(jù)庫控制臺,
           如mysql -u root -p 
  
           mysql>use 數(shù)據(jù)庫
           然后使用source命令,后面參數(shù)為腳本文件(如這里用到的.sql)
           mysql>source  /home/wcnc_db.sql

 

4、mysql數(shù)據(jù)庫操作實例。
   (1)創(chuàng)建班級數(shù)據(jù)庫
      創(chuàng)建數(shù)據(jù)庫的命令式create databases dbname,其中dbname為數(shù)據(jù)庫名,例如當前要創(chuàng)建的數(shù)據(jù)庫名為class,因此需要輸入下面的命令:

  1.    mysq->create database class;
      
   (2)創(chuàng)建學生信息表
  1.    mysql>use class;
  2.    mysql>create table student (nid INT UNIQUE,name VARCHAR(20),age int);

 

      
   (3)插入基本數(shù)據(jù)
      向已經(jīng)創(chuàng)建好的數(shù)據(jù)表中插入3條基本記錄,SQL語句如下:
  1.    mysql->insert into student values(100, 'Lee', 16);
  2.    mysql->insert into student values(101, 'Tom', 17);
  3.    mysql->insert into student values(102, 'Harry', 15);
    (4)查詢全部數(shù)據(jù)
      利用select語句查詢全部記錄。
  1.    mysql->select * from student;
      
   (5)刪除其中一條記錄
      這里我們假設Tom同學轉學了,那么他已經(jīng)不在我們的班級class里面了,所以需要把他從class刪除。
      mysql->delete from student where name = 'Tom';
   (6)更新其中一條記錄
      班級class中還存在一種情況,就是有學生要改名了,比如Lee要改名為Tony了。具體的sql語句如下:
      mysql->update student set name = 'Tony' where name = 'Lee';
   (7)刪除數(shù)據(jù)庫
      如果學生畢業(yè),那么我們這個班級就沒有存在的必要了,這是就可以刪除掉這個數(shù)據(jù)庫class了。
      刪除的步驟如下:
      a、刪除所有的數(shù)據(jù)表,SQL語句為:
      mysql->drop table class;
      b、刪除數(shù)據(jù)庫,SQL語句為:
      mysql->delete database class;
5、Mysql數(shù)據(jù)庫連接之C語言API
   首先要安裝一個包libmysql++-dev包,不然編譯代碼的時候會出現(xiàn)“mysql/mysql.h: No such file or directory”錯誤
   sudo apt-get install libmysql++-dev
         示例代碼:
  1. #include<mysql/mysql.h>
  2. #include<stdio.h>
  3. int main()
  4. {
  5.      MYSQL mysql;
  6.      MYSQL_RES *res;
  7.      MYSQL_ROW row;
  8.      char *query = "select * from dbtablename;";
  9.      int t,r;
  10.      mysql_init(&mysql);
  11.      if(!mysql_real_connect(&mysql,"localhost","dbusername",
                         "dbpassword","dbname",0,NULL,0))
  12.      {
  13.          printf("Error connecting to database:%s\n",mysql_error(&mysql));
  14.      }
  15.      else
  16.          printf("Connected........");
  17.  
  18.      else
  19.          printf("Connected........");
  20.      t=mysql_query(&mysql,query);
  21.      if(t)
  22.      {
  23.          printf("Error making query:%s\n",mysql_error(&mysql));
  24.      }
  25.      else
  26.      {
  27.          printf("Query made ....\n");
  28.          res = mysql_use_result(&mysql);
  29.          if(res)
  30.          {
  31.              for(r=0;r<=mysql_field_count(&mysql);r++)
  32.              {
  33.                  row = mysql_fetch_row(res);
  34.                  if(row<0) break;
  35.                  for(t=0;t<mysql_num_fields(res);t++)
  36.                      printf("%s ",row[t]);
  37.                  printf("\n");
  38.              }
  39.          }
  40.          mysql_free_result(res);
  41.      }
  42.      mysql_close(&mysql);
  43.      return 0;
  44.  }

   編譯之~注意一定要先安裝libmysql++-dev包。編譯指令:gcc c_mysql.c -lmysqlclient -o c_mysql

  運行./c_mysql


posted on 2012-12-15 22:54 董三 閱讀(8049) 評論(1)  編輯 收藏 引用 所屬分類: linux

評論

# re: linux下使用mysql的C語言API 2016-03-11 09:46 swing07

printf("Query made ....\n");
res = mysql_use_result(&mysql);
if(res)
{
for(r=0;r<=mysql_field_count(&mysql);r++)
{
row = mysql_fetch_row(res);
if(row<0) break;
for(t=0;t<mysql_num_fields(res);t++)
printf("%s ",row[t]);
printf("\n");
}
}
mysql_free_result(res);
這段代碼都有問題 會 Segmentation fault (core dumped)。

需要這么改 res = mysql_store_result(&mysql);
if(res)
{
printf("result mysql_field_count:%d ....\n",mysql_num_rows(res) );
// printf("result mysql_fetch_row:%d ....\n",mysql_fetch_row(res) );
printf("result mysql_num_fields:%d ....\n",mysql_num_fields(res) );
for(r=0;r<mysql_num_rows(res);r++)
{
row = mysql_fetch_row(res);
if(row<0) break;
for(t=0;t<mysql_num_fields(res);t++)
printf("%s ",row[t]);
printf("\n");
}
}  回復  更多評論   


只有注冊用戶登錄后才能發(fā)表評論。
網(wǎng)站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


<2016年3月>
282912345
6789101112
13141516171819
20212223242526
272829303112
3456789

導航

統(tǒng)計

常用鏈接

留言簿(1)

隨筆分類

隨筆檔案

文章分類

文章檔案

博客友

搜索

最新評論

閱讀排行榜

評論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            久久天天躁狠狠躁夜夜av| 亚洲国产欧美精品| 一区二区日韩伦理片| 欧美日韩裸体免费视频| 亚洲一区二区三区在线播放| 99精品视频免费观看视频| 欧美一区二区三区啪啪| 国产午夜精品美女毛片视频| 久久国产精品72免费观看| 久久久久国产成人精品亚洲午夜| 欧美黄色影院| 国内精品国产成人| 老司机精品福利视频| 欧美激情国产日韩| 亚洲一区二区三区午夜| 欧美一乱一性一交一视频| 一区在线影院| 亚洲精品孕妇| 国产日韩精品久久| 欧美黄色免费| 欧美视频二区| 久久综合国产精品| 欧美日韩精品一区视频 | 欧美电影电视剧在线观看| 宅男66日本亚洲欧美视频| 国产日韩视频| 亚洲精品国产精品国自产观看浪潮| 欧美在线视屏| 亚洲免费成人av电影| 亚洲在线观看| 亚洲国产另类精品专区| 久久久久久一区| 欧美精品97| 久久久久久久久久码影片| 欧美国产精品专区| 久久精品国语| 欧美色一级片| 亚洲国产视频直播| 国产日韩欧美在线播放| 香蕉免费一区二区三区在线观看| 日韩一区二区福利| 亚洲国产成人porn| 亚洲欧美日韩精品久久| 日韩一级黄色av| 久久久水蜜桃| 亚洲精品日韩久久| 性感少妇一区| 亚洲香蕉成视频在线观看| 男女视频一区二区| 久久久久欧美| 国产日韩欧美中文在线播放| 亚洲精品视频免费| 亚洲精美视频| 久久一区二区三区av| 欧美一区二区三区久久精品茉莉花| 亚洲视频在线观看免费| 国产欧美精品一区二区色综合 | 亚洲国产精品一区二区久| 亚洲自拍偷拍网址| 亚洲午夜小视频| 亚洲欧美日韩在线一区| 亚洲专区在线| 欧美日韩一区在线| 日韩一区二区精品视频| 国产精品综合av一区二区国产馆| 久久精品亚洲热| 国产日韩欧美亚洲一区| 欧美亚洲一区在线| 久久久91精品| 在线观看欧美一区| 久久噜噜噜精品国产亚洲综合| 日韩亚洲国产欧美| 欧美精品观看| 日韩视频不卡| 亚洲一区二区在线视频| 久久国产精品久久久| 久久午夜影视| 在线观看亚洲一区| 美女被久久久| 亚洲黄色性网站| 亚洲一级高清| 国产精品日本| 久久久www| 亚洲一区免费观看| 国产伦精品一区二区三区视频孕妇| 久久综合狠狠综合久久综合88 | 亚洲在线观看| 久久久精品免费视频| 激情久久久久久久| 欧美激情1区2区3区| 久久久久国产精品午夜一区| 一区二区三区在线视频播放| 美女主播视频一区| 日韩视频免费观看高清在线视频| 尤物精品在线| 欧美精品在线一区二区三区| 亚洲午夜在线| 免费一级欧美在线大片| 一区二区三区四区五区视频| 国产精品萝li| 一本久久综合亚洲鲁鲁| 欧美一区二区在线视频| 伊人天天综合| 欧美特黄a级高清免费大片a级| 亚洲国产一区二区三区在线播| 国产日韩欧美a| 一区二区三区回区在观看免费视频| 亚洲福利视频网站| 国产精品igao视频网网址不卡日韩| 91久久精品www人人做人人爽 | 久久亚洲美女| 99热免费精品在线观看| 老司机成人在线视频| 亚洲一区成人| 91久久久久久| 国产原创一区二区| 国产精品高潮视频| 欧美激情免费在线| 久久久国产亚洲精品| 亚洲视频在线免费观看| 亚洲国产日本| 男人的天堂成人在线| 午夜一区二区三区在线观看| 亚洲精品一区二区三区福利| 国产综合色精品一区二区三区| 久久国产精品久久久| 久久最新视频| 久久精品人人| 亚洲欧美成人网| 日韩视频一区二区三区在线播放| 欧美理论电影网| 中日韩高清电影网| 欧美大片在线观看| 99ri日韩精品视频| 亚洲第一精品在线| 国产一区二区三区日韩欧美| 国产精品久久精品日日| 欧美日韩dvd在线观看| 欧美电影免费观看高清| 美日韩丰满少妇在线观看| 久久久综合视频| 欧美一站二站| 久久国产精品99精品国产| 欧美激情网友自拍| 免费日本视频一区| 免费av成人在线| 欧美国产日产韩国视频| 你懂的一区二区| 欧美国产欧美亚州国产日韩mv天天看完整 | 日韩视频在线免费观看| 欧美综合国产| 久久精品一区二区国产| 久久精品亚洲一区二区三区浴池| 亚洲福利专区| 亚洲精品一区在线观看| 国产精品自拍三区| 国产亚洲欧美日韩美女| 在线看片成人| 亚洲精品久久久久久下一站| 亚洲精品免费网站| 亚洲最新视频在线| 亚洲一区二区免费| 香蕉久久精品日日躁夜夜躁| 亚洲激情视频在线| 亚洲精品在线视频观看| 亚洲一区视频| 久久精品伊人| 亚洲国产专区校园欧美| 久久国产精品99精品国产| 久久久夜色精品亚洲| 欧美高清在线一区二区| 一级日韩一区在线观看| 欧美激情在线| 国产精品99久久99久久久二8| 欧美国产欧美综合| 一区二区三区 在线观看视频| 欧美ab在线视频| 日韩视频免费在线观看| 欧美一区亚洲| 亚洲欧美国产一区二区三区| 久久久久久电影| 国产精品ⅴa在线观看h| 欧美日韩成人在线| 蜜臀99久久精品久久久久久软件| 欧美一区二区免费视频| 欧美1区2区3区| 国产美女精品| 国产欧美在线| 亚洲精品专区| 久久麻豆一区二区| 中日韩美女免费视频网址在线观看| 亚洲欧洲在线看| 欧美诱惑福利视频| 午夜视频在线观看一区二区三区| 亚洲免费电影在线| 久久久久久香蕉网| 国产精品夜色7777狼人| 亚洲免费观看在线观看| 日韩视频一区二区三区在线播放免费观看 | 国产精品日日摸夜夜添夜夜av|