mysql 與操作 MySql基礎概念與操作

2021-10-25 14:33:06 字數 2668 閱讀 1542

#include

#include

#include "mysql.h"

#include

using std::string;

using std::vector;

#pragma comment(lib, "libmysql")

void dealsql(const char* pmysqlc, mysql* pmysql)

if (mysql_real_query(pmysql, pmysqlc, strlen(pmysqlc)))

assert(false);

void getdealresult(mysql* pmysql, vector>& dvecrestr)

mysql_res* pre = mysql_store_result(pmysql);

if (!pre)

return;

unsigned long long nhcount = mysql_num_rows(pre);

unsigned long long nlcount = mysql_num_fields(pre);

if (!nhcount || !nlcount)

return;

dvecrestr.resize(static_cast(nhcount));

for (int i = 0; i < nhcount; ++i)

dvecrestr[i].resize(static_cast(nlcount));

auto prow = mysql_fetch_row(pre);

for (int j = 0; j < nlcount; ++j)

if (!prow[j])

dvecrestr[i][j] = "null";

else

dvecrestr[i][j] = prow[j];

int _tmain(int argc, _tchar* ar**)

mysql mysql;

mysql* pmysql = &mysql;

//初始化

if (mysql_init(pmysql) != pmysql)

assert(false);

//連線

if (pmysql != mysql_real_connect(pmysql, "127.0.0.1", "root", "123456",

"mysql", 3306, nullptr, 0))

assert(false);

//建立資料庫

dealsql("create database if not exists dbtest", pmysql);

//顯示資料庫

dealsql("show databases", pmysql);

vector> dvecsqlresult;

getdealresult(pmysql, dvecsqlresult);

//dvecsqlresult包含了所有現存的資料庫名字

//選擇資料庫

dealsql("use dbtest", pmysql);

//建表

dealsql("create table if not exists tabletest (id int not null "

"auto_increment, name varchar(50) not null, value int,"

"primary key(id))", pmysql);

//查詢表結構

dealsql("show columns from tabletest", pmysql);

dvecsqlresult.clear();

getdealresult(pmysql, dvecsqlresult);

dvecdbname =

[6]("id","int(11)","no","pri","null","auto_increment"),

[6]("name","varchar(50)","no","","null",""),

[6]("value","int(11)","yes","","null","")

//插入資料

dealsql("insert into tabletest (name, value) values"

"(\"s0\", 100), (\"s1\", 99)", pmysql);

//檢索表內所有資料

dealsql("select * from tabletest", pmysql);

dvecsqlresult.clear();

getdealresult(pmysql, dvecsqlresult);

//dvecsqlresult = [2]([3]("1","s0","100"),[3]("2","s1","99"))

//刪除指定行

dealsql("delete from tabletest where name = \"s0\"", pmysql);

//刪除表

dealsql("drop table tabletest", pmysql);

//刪除資料庫

dealsql("drop database dbtest", pmysql);

//關閉連線

mysql_close(pmysql);

return 0;

mysql基礎操作語句 Mysql基礎操作語句

比如乙個學生表student有三個欄位id,name,資料型別分別為int varchar varchar 增加資料 語法 insert into 表名 values val1,val2.例 insert into student values 1516,張三 男 部分字段插入 insert int...

MySQL基礎 操作與配置)

mysql使用者 使用者資訊都存放在mysql資料庫的user表中,新使用者建立後不能登入,需要設定許可權。建立乙個新使用者 create user 使用者名稱 identified by 密碼 刪除使用者 drop user 使用者名稱 重新命名使用者 rename 原使用者名稱 to 新使用者名...

mysql入門操作 MySql基礎操作

ddl 資料庫 建立資料庫 create database資料庫名 刪除資料庫 drop database 資料庫名 建立表 create table table name column name column type engine innodb default charset utf8 刪除表 ...