MySQL數(shù)據(jù)表中插入數(shù)據(jù)并查詢(xún)輸出的實(shí)現(xiàn)
作者:佚名
插入數(shù)據(jù)是MySQL中最基本的操作之一,下文就為您介紹MySQL數(shù)據(jù)表中插入數(shù)據(jù)并查詢(xún)輸出的實(shí)現(xiàn)方法,供您參考學(xué)習(xí)之用。
MySQL數(shù)據(jù)表中插入數(shù)據(jù)是我們很常見(jiàn)的操作,下面就為您詳細(xì)介紹MySQL數(shù)據(jù)表中插入數(shù)據(jù)并查詢(xún)輸出的實(shí)現(xiàn)方法步驟,如果您對(duì)MySQL數(shù)據(jù)表方面感興趣的話,不妨一看。
- CREATE TABLE demotable (
- id int(11) NOT NULL auto_increment,
- demodata varchar(255) default NULL,
- PRIMARY KEY (id)
- ) TYPE=MyISAM;
- ----------往數(shù)據(jù)表中插入數(shù)據(jù)并查詢(xún)輸出----------
- #include <mysql.h> /* Headers for MySQL usage */
- #include <stdio.h>
- #include <stdlib.h>
- #include <string.h>
- int main(int argc, char **argv){
- MYSQL demo_db;
- mysql_init(&demo_db);
- int insert_id;
- char *encdata, *query;
- int datasize;
- MYSQL_RES *res; /* To be used to fetch information into */
- MYSQL_ROW row;
- if(argc<2){
- printf("Please supply a string for insertion into the database\n");
- exit(0);
- }
- if(!mysql_real_connect(&demo_db, "localhost", "root", "mysql", "demodb", 0, NULL, 0)){
- printf(mysql_error(&demo_db));
- exit(1);
- }
- // if(mysql_select_db(&demo_db, "demodb")){ /* Select the database we want to use */
- // printf(mysql_error(&demo_db));
- // exit(1);
- // }
- encdata=malloc(2*strlen(argv[1])+1);
- datasize=mysql_real_escape_string(&demo_db, encdata, argv[1], strlen(argv[1]));
- //printf("%s\n",encdata);
- query=malloc(datasize+255);
- sprintf(query, "INSERT INTO demotable(demodata) VALUES('%s')", encdata); /* Build query */
- //printf("%s\n",query);
- if(mysql_real_query(&demo_db, query, strlen(query))){ /* Make query */
- printf(mysql_error(&demo_db));
- exit(1);
- }
- free(query);
- insert_id=mysql_insert_id(&demo_db); /* Find what id that data was given */
- query=malloc(255);
- sprintf(query, "SELECT demodata FROM demotable WHERE id=%d", insert_id);
- if(mysql_real_query(&demo_db, query, strlen(query))){ /* Make query */
- printf(mysql_error(&demo_db));
- exit(1);
- }
- free(query);
- res=mysql_store_result(&demo_db); /* Download result from server */
- row=mysql_fetch_row(res); /* Get a row from the results */
- printf("You inserted \"%s\".\n", row[0]);
- mysql_free_result(res); /* Release memory used to store results. */
- mysql_close(&demo_db);
- return 0;
- }
【編輯推薦】
深度解析MySQL創(chuàng)建關(guān)聯(lián)表
MySQL MyISAM表結(jié)構(gòu)的恢復(fù)
責(zé)任編輯:段燃
來(lái)源:
互聯(lián)網(wǎng)