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

lynch

linux下使用mysql的C語言API

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

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

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

    (5) mysqldump工具備份和恢復

 

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

 

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

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

 

      
   (3)插入基本數據
      向已經創建好的數據表中插入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)查詢全部數據
      利用select語句查詢全部記錄。
  1.    mysql->select * from student;
      
   (5)刪除其中一條記錄
      這里我們假設Tom同學轉學了,那么他已經不在我們的班級class里面了,所以需要把他從class刪除。
      mysql->delete from student where name = 'Tom';
   (6)更新其中一條記錄
      班級class中還存在一種情況,就是有學生要改名了,比如Lee要改名為Tony了。具體的sql語句如下:
      mysql->update student set name = 'Tony' where name = 'Lee';
   (7)刪除數據庫
      如果學生畢業,那么我們這個班級就沒有存在的必要了,這是就可以刪除掉這個數據庫class了。
      刪除的步驟如下:
      a、刪除所有的數據表,SQL語句為:
      mysql->drop table class;
      b、刪除數據庫,SQL語句為:
      mysql->delete database class;
5、Mysql數據庫連接之C語言API
   首先要安裝一個包libmysql++-dev包,不然編譯代碼的時候會出現“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 董三 閱讀(8039) 評論(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");
}
}  回復  更多評論   

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

導航

統計

常用鏈接

留言簿(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>
            久久久久欧美精品| 亚洲激情自拍| 欧美在线视频全部完| 国产女优一区| 久久久青草婷婷精品综合日韩| 99精品国产福利在线观看免费| 亚洲视频福利| 亚洲福利在线观看| 国产精品一二三四区| 久久综合网hezyo| 99国产精品久久久久久久久久| 亚洲国产精品小视频| 模特精品在线| 亚洲一区视频| 亚洲人体大胆视频| 久久国产精品黑丝| 老色鬼久久亚洲一区二区| 亚洲无吗在线| 亚洲精品日韩激情在线电影| 国产精品美女久久福利网站| 美女免费视频一区| 久久久久久亚洲精品中文字幕 | 亚洲视频一区在线观看| 欧美成人激情视频免费观看| 欧美一区二区三区男人的天堂| 亚洲精品久久久久久一区二区| 亚洲调教视频在线观看| 久久久噜噜噜久久中文字幕色伊伊 | 在线午夜精品自拍| 亚洲精品视频二区| 亚洲全黄一级网站| 欧美在线一区二区| 亚洲欧美美女| 夜夜嗨网站十八久久| 欧美一区二区视频在线| 欧美日韩视频在线一区二区观看视频| 欧美一级视频一区二区| 亚洲美女淫视频| 亚洲国产高清视频| 午夜精品久久久久久久99樱桃| av不卡在线看| 一本色道久久综合亚洲精品不卡 | 国产日韩欧美视频在线| 国产精品亚洲аv天堂网 | 亚洲夫妻自拍| 久久国产精品一区二区三区四区| 午夜国产欧美理论在线播放| 欧美电影美腿模特1979在线看| 亚洲电影免费在线| 欧美大片在线影院| 欧美一区二区视频网站| 国产精品女人久久久久久| 一本色道久久综合亚洲精品小说| 欧美大片在线看免费观看| 久久精品一区二区国产| 欧美久久在线| 国产精品久久久久久久免费软件 | 久久综合免费视频影院| 国内一区二区三区| 亚洲精品在线一区二区| 另类专区欧美制服同性| 久久疯狂做爰流白浆xx| 欧美激情网站在线观看| 国产精品尤物| 香蕉亚洲视频| 亚洲欧美国产精品专区久久| 国产精品久久久久毛片软件| 亚洲一区二区高清| 亚洲伊人观看| 国产一区二区看久久| 一二三四社区欧美黄| 亚洲精品孕妇| 国产精品久久久久久亚洲毛片 | 国产精品乱码妇女bbbb| 午夜一区二区三视频在线观看| 亚洲桃花岛网站| 国产日韩欧美在线| 欧美大片免费观看在线观看网站推荐 | 国产偷久久久精品专区| 久久精品国产亚洲精品| 久久精品国产91精品亚洲| 亚洲国产欧美精品| 亚洲精品资源美女情侣酒店| 国产精品三上| 99精品欧美一区二区三区| 另类人畜视频在线| 欧美韩国在线| 最近中文字幕mv在线一区二区三区四区| 欧美极品一区二区三区| 国产精品久久久久久模特| 亚洲一区二区三区高清| 亚洲久久成人| 国产精品国产精品| 国产一区二区电影在线观看| 欧美怡红院视频| 欧美在线啊v| 影音先锋亚洲视频| 亚洲一区二区av电影| 亚洲视频日本| 亚洲电影免费观看高清完整版在线观看| 亚洲精品日韩在线观看| 亚洲国产日日夜夜| 国产精品美女| 女人色偷偷aa久久天堂| 欧美四级伦理在线| 激情av一区| 久久国内精品自在自线400部| 欧美在线视频不卡| 一本色道久久综合精品竹菊| 性色av香蕉一区二区| 欧美性大战久久久久| 欧美日韩国产区| 亚洲国产精品久久久久秋霞不卡| 亚洲第一精品夜夜躁人人爽| 欧美午夜精品理论片a级按摩| 久久一区中文字幕| 先锋影音久久| 99日韩精品| 鲁大师影院一区二区三区| 性色av一区二区三区| 欧美精品情趣视频| 欧美高清视频一区二区三区在线观看| 国产精品久久久久久久免费软件| 蜜桃av久久久亚洲精品| 久久亚洲精品视频| 精品99视频| 亚洲欧美国产视频| 一区二区三区欧美| 99在线热播精品免费99热| 在线 亚洲欧美在线综合一区| 亚洲视频精品| 在线中文字幕一区| 欧美国产视频在线观看| 亚洲午夜日本在线观看| 欧美顶级大胆免费视频| 亚洲一区国产视频| 99re热这里只有精品免费视频| 欧美黄色影院| 亚洲高清在线观看一区| 欧美精品一区二区三区高清aⅴ| 亚洲激情亚洲| 久久一区精品| 久久嫩草精品久久久精品一| 国产精品美女| 午夜一区不卡| 久久久免费精品视频| 好男人免费精品视频| 久久精品30| 欧美 日韩 国产一区二区在线视频 | 欧美成人在线影院| 亚洲高清在线视频| 日韩视频一区二区在线观看 | 在线国产日韩| 另类av导航| 亚洲黄色影院| 99视频精品免费观看| 欧美日韩一区二区在线观看视频| 夜夜嗨av一区二区三区网站四季av | 99pao成人国产永久免费视频| 99国产精品| 亚洲图片欧洲图片av| 亚洲影院色无极综合| 国产精品久久久亚洲一区| 午夜精品在线视频| 欧美成人午夜激情| 中文av一区二区| 国产日韩在线看| 欧美3dxxxxhd| 亚洲婷婷综合久久一本伊一区| 久久久国产亚洲精品| 欧美精品在欧美一区二区少妇| 日韩天堂在线观看| 久久精品一二三| 最新国产成人在线观看| 午夜久久美女| 欧美~级网站不卡| 在线亚洲电影| 黑丝一区二区| 欧美三日本三级少妇三2023| 欧美一区二区精品| 亚洲乱码国产乱码精品精可以看| 欧美与黑人午夜性猛交久久久| 在线欧美电影| 国产精品色一区二区三区| 美女成人午夜| 午夜精品在线观看| 99这里有精品| 亚洲激情自拍| 蜜臀av在线播放一区二区三区| 亚洲午夜电影| 亚洲人成网站精品片在线观看 | 最新69国产成人精品视频免费 | 亚洲一区尤物| 亚洲天堂网站在线观看视频| 小处雏高清一区二区三区| 亚洲日韩欧美视频| 在线精品视频一区二区| 国产精品自在欧美一区| 欧美日韩大陆在线| 女人天堂亚洲aⅴ在线观看|