From 7f63f973141f973faff7896087697f5150332864 Mon Sep 17 00:00:00 2001
From: pans <pans@454eff88-639b-444f-9e54-f578c98de674>
Date: 星期五, 30 十二月 2016 12:32:02 +0800
Subject: [PATCH] 

---
 RtspFace/demo/src/db/main.cpp    |   24 ++++++
 RtspFace/demo/src/db/DBuntil.cpp |   64 ++++++++++++++++
 RtspFace/demo/src/db/DBuntil.h   |   37 +++++++++
 RtspFace/demo/src/db/demo.cpp    |   82 ++++++++++++++++++++
 4 files changed, 207 insertions(+), 0 deletions(-)

diff --git a/RtspFace/demo/src/db/DBuntil.cpp b/RtspFace/demo/src/db/DBuntil.cpp
new file mode 100644
index 0000000..3787225
--- /dev/null
+++ b/RtspFace/demo/src/db/DBuntil.cpp
@@ -0,0 +1,64 @@
+#include "DBuntil.h"
+#include <mysql.h>
+#include <cstdio>
+
+const char DBuntil::user[] = "root";         
+const char DBuntil::pswd[] = "";        
+const char DBuntil::host[] = "localhost";    
+const char DBuntil::db[] = "demo";       
+unsigned int DBuntil::port = 3306; 
+
+MYSQL myCont;
+MYSQL_RES *result;
+MYSQL_ROW sql_row;
+#pragma comment(lib,"D:\\Program Files\\mysql-5.7.17-winx64\\lib\\libmysql.lib") 
+
+DBuntil::DBuntil()
+{
+	mysql_init(&myCont);
+	mysql_real_connect(&myCont, host, user, pswd, db, port, NULL, 0);
+}
+
+DBuntil::~DBuntil()
+{
+	if (result != NULL) 
+		mysql_free_result(result);
+
+	mysql_close(&myCont);
+}
+
+person DBuntil::db_rearch(int f_id)
+{
+	person p={0,""};
+	db_select(f_id,&p);
+	//对结构体赋值
+	return p;
+}
+
+int DBuntil::db_select(int f_id,person* per)
+{
+	//sql="select a.p_id,b.`name`,b.img from face_person a,user_info b where a.face_id = " + f_id + " AND a.p_id = b.pid ";
+	char c_sql[1024];
+	sprintf( c_sql, "select a.p_id,b.`name`,b.img from face_person a,user_info b where a.face_id = %d AND a.p_id = b.pid " , f_id ); 
+	
+	//sprintf( sql, "select a.p_id,b.`name`,b.img from face_person a,user_info b where a.face_id = %d AND a.p_id = b.pid " , f_id ); 
+	mysql_query(&myCont, "SET NAMES gbk"); //设置编码格式
+	res = mysql_query(&myCont,c_sql);//查询
+	if (!res)
+	{
+		result = mysql_store_result(&myCont);
+		if (result)
+		{
+			while (sql_row = mysql_fetch_row(result))//获取具体的数据
+			{
+				per->p_id = atoi( sql_row[0]);
+				per->name = sql_row[1];
+			}
+		}
+	}
+	else
+	{
+		//cout << "query sql failed!" << endl;
+	}
+	return per->p_id;
+}
diff --git a/RtspFace/demo/src/db/DBuntil.h b/RtspFace/demo/src/db/DBuntil.h
new file mode 100644
index 0000000..f3ac9df
--- /dev/null
+++ b/RtspFace/demo/src/db/DBuntil.h
@@ -0,0 +1,37 @@
+#ifndef _DBUNTIL_H_
+#define _DBUNTIL_H_
+
+struct person
+{
+	int p_id;
+	char *name;
+	//图片
+};
+
+class DBuntil
+{
+
+public:
+	DBuntil();
+	~DBuntil();
+	person db_rearch(int f_id);
+
+	int db_register(int f_id,person p);
+
+private:
+
+	int db_add();
+	int db_update();
+	int db_select(int f_id,person *per);
+
+	char *sql;
+	int res;
+	static const char user[];         
+	static const char pswd[];        
+	static const char host[];    
+	static const char db[];       
+	static unsigned int port;
+};
+
+
+#endif
\ No newline at end of file
diff --git a/RtspFace/demo/src/db/demo.cpp b/RtspFace/demo/src/db/demo.cpp
new file mode 100644
index 0000000..9daea23
--- /dev/null
+++ b/RtspFace/demo/src/db/demo.cpp
@@ -0,0 +1,82 @@
+#include <Windows.h>
+#include <mysql.h>
+#include <string>
+#include <iostream>
+
+using namespace std;
+#pragma comment(lib,"D:\\Program Files\\mysql-5.7.17-winx64\\lib\\libmysql.lib") 
+
+int main()
+{
+
+	const char user[] = "root";         
+	const char pswd[] = "";        
+	const char host[] = "localhost";    
+	const char db[] = "demo";       
+	unsigned int port = 3306;                
+	MYSQL myCont;
+	MYSQL_RES *result;
+	MYSQL_ROW sql_row;
+	int res;
+	char *sql;
+	mysql_init(&myCont);
+
+
+	if (mysql_real_connect(&myCont, host, user, pswd, db, port, NULL, 0) != NULL)
+	{
+		sql="INSERT INTO user_info (NAME, img) VALUES ('c', null)";
+		res = mysql_query(&myCont,sql);//查询
+		if (res)
+		{
+			cout << "INSERT sql1 failed!" << endl;
+		}else
+		{
+			sql="INSERT INTO face_person (p_id, face_id) VALUES (LAST_INSERT_ID(), 2)";
+			res = mysql_query(&myCont,sql);
+			if (res)
+			{
+				cout << "INSERT sql2 failed!" << endl;
+			}
+		}
+
+		printf("MySQL client version: %s\n", mysql_get_client_info());
+		sql="select a.pid,a.name,a.img,b.face_id from user_info a,face_person b where a.pid = b.p_id";
+		mysql_query(&myCont, "SET NAMES gbk"); //设置编码格式
+		res = mysql_query(&myCont,sql);//查询
+		cout<<res<< endl;
+		if (!res)
+		{
+			result = mysql_store_result(&myCont);
+			if (result)
+			{
+				while (sql_row = mysql_fetch_row(result))//获取具体的数据
+				{
+					cout<<"  pid:" << sql_row[0] << endl;
+					cout<<"  name:" << sql_row[1] << endl;
+					//cout<<"  img:" << sql_row[2] << endl;
+					cout<<"  faceid:" << sql_row[3] << endl;
+					cout<< endl;
+				}
+			}
+		}
+		else
+		{
+			cout << "query sql failed!" << endl;
+		}
+
+	}
+	else
+	{
+		cout << "connect failed!" << endl;
+	}
+	
+
+
+	if (result != NULL) 
+		mysql_free_result(result);
+
+	mysql_close(&myCont);
+	system("pause");
+	return 0;
+
+}
\ No newline at end of file
diff --git a/RtspFace/demo/src/db/main.cpp b/RtspFace/demo/src/db/main.cpp
new file mode 100644
index 0000000..c6ec69e
--- /dev/null
+++ b/RtspFace/demo/src/db/main.cpp
@@ -0,0 +1,24 @@
+#include <Windows.h>
+#include <string>
+#include <iostream>
+
+#include "DBuntil.h"
+
+using namespace std;
+
+
+int main(int argc, char *argv[])
+{
+	int i=i;
+	DBuntil dbu = DBuntil();
+	person p={};
+	p = dbu.db_rearch(i);
+	if(p.p_id != NULL)
+	{
+		cout<<p.p_id<<endl;
+		cout<<p.name<<endl;
+	}else
+		cout<<"person is null"<<endl;
+	system("pause");
+	return 0;
+}
\ No newline at end of file

--
Gitblit v1.8.0