mysql c++
来源:互联网 发布:深入浅出带你学python 编辑:程序博客网 时间:2024/06/05 18:56
LOAD_FILE(file_name)读取文件并返回该文件的内容作为一个字符串。要使用这个函数,该文件必须位于服务器上的主机,你必须指定该文件的完整路径名,你必须具有FILE权限。该文件必须是可读的,其大小小于max_allowed_packet个字节。如果该文件不存在或无法读取,因为不符合上述条件之一的,该函数返回NULL。截至SQL5.0.19,character_set_filesystem系统变量控制文字字符串文件名的解释。//mysql数据库查询void mysql_select(){const char user[] = "root"; //usernameconst char pswd[] = "123"; //passwordconst char host[] = "localhost"; //or"127.0.0.1"const char table[] = "faces"; //databaseunsigned int port = 3306; //server port MYSQL myCont;MYSQL_RES *result=NULL;MYSQL_ROW sql_row;MYSQL_FIELD *fd;char column[32][32];int res;// BLOB blob[100] ; mysql_init(&myCont); if(mysql_real_connect(&myCont,host,user,pswd,table,port,NULL,0)) { cout<<"sql connect succeed!"<<endl; mysql_query(&myCont, "SET NAMES GBK"); //设置编码格式,否则在cmd下无法显示中文 res=mysql_query(&myCont,"select * from face_table");//查询 if(!res) { result=mysql_store_result(&myCont);//保存查询到的数据到result if(result){int i,j; // cout<<"number of result: "<<(unsigned long)mysql_num_rows(result)<<endl; for(i=0;fd=mysql_fetch_field(result);i++)//获取列名 { strcpy(column[i],fd->name); } j=mysql_num_fields(result);//face_num=j/2; /* for(i=0;i<j;i++) { printf("%s\t",column[i]); }*/ printf("\n");i=0; while(sql_row=mysql_fetch_row(result))//获取具体的数据 { // printf("%s\n",sql_row[i]);my_mat.push_back(imread(sql_row[1], CV_LOAD_IMAGE_GRAYSCALE));//my_mat.push_back(imread(sql_row[i+1], CV_LOAD_IMAGE_GRAYSCALE));//my_lable.push_back(i/2);//imshow("原图",my_mat());my_lable.push_back(fromString<int>(sql_row[3]));name_people[fromString<int>(sql_row[3])]=sql_row[4]; }face_num=name_people.size();cout<<"number of people in the sql: "<<face_num<<endl;}}else { cout<<"query sql failed!"<<endl; } }}//mysql数据库插入void mysql_connect(string s1){const char user[] = "root"; //username const char pswd[] = "123"; //password const char host[] = "localhost"; //or"127.0.0.1" const char table[] = "faces"; //database unsigned int port = 3306; //server port MYSQL myCont;MYSQL_RES *result=NULL; MYSQL_ROW sql_row; MYSQL_FIELD *fd; char column[32][32]; int res; mysql_init(&myCont); if(mysql_real_connect(&myCont,host,user,pswd,table,port,NULL,0)) { cout<<"connect succeed!"<<endl;mysql_query(&myCont, "SET NAMES GBK"); //设置编码格式,否则在cmd下无法显示中文// 插入操作 string strsql;mysql_query(&myCont,"START TRANSACTION"); // 开启事务, 如果没有开启事务,那么效率会变得非常低下!//double current_time = (double)getTickCount();strsql="insert into face_table(path,image) values('"+s1+"',load_file('C:/Users/admin/Documents/Visual Studio 2012/Projects/Facedetect/face/"+s1+"'))";mysql_query(&myCont,strsql.c_str());mysql_query(&myCont,"COMMIT"); // 提交事务cout<<"insert end"<<endl;} else{string strError= mysql_error(&myCont); cout <<"Error info: "<<strError<<endl;}//释放结果集 关闭数据库if(result!=NULL) mysql_free_result(result);//释放结果资源mysql_close(&myCont);mysql_library_end();}连接MYSQL数据库的方法及示例方法一:使用MYSQL推出的MySQL Connector/Net is an ADO.NET driver for MySQL该组件为MYSQL为ADO.NET访问MYSQL数据库设计的.NET访问组件。安装完成该组件后,引用命名空间MySql.Data.MySqlClient;使用命令行编译时:csc /r:MySql.Data.dll test.cs方法二:通过ODBC访问MYSQL数据库访问前要先下载两个组件:odbc.net和MYSQL的ODBC驱动(MySQL Connector/ODBC (MyODBC) driver)目前为3.51版安装完成后,即可通过ODBC访问MYSQL数据库方法三:使用CoreLab推出的MYSQL访问组件,面向.NET安装完成后,引用命名空间:CoreLab.MySql;使用命令编译时:csc /r:CoreLab.MySql.dll test.cs以下为访问MYSQL数据库实例编译指令:csc /r:CoreLab.MySql.dll /r:MySql.Data.dll test.csusing System;using System.Net;using System.Text;using CoreLab.MySql;using System.Data.Odbc;using MySql.Data.MySqlClient;class ConnectMySql{public void Connect_CoreLab(){ string c; MySqlConnection mycn = new MySqlConnection("Database=test;Data Source=localhost;User Id=root;Password=qing"); mycn.Open(); MySqlCommand mycm = new MySqlCommand("select * from shop",mycn); MySqlDataReader msdr = mycm.ExecuteReader(); while(msdr.Read()) { if (msdr.HasRows) { Console.WriteLine(msdr.GetString(0)); } } msdr.Close(); mycn.Close();}public void Connect_Odbc(){ //string MyC; string MyC + "SERVER=localhost;" + "DATABASE=test;" + "UID=root;" + "PASSWORD=qing;" + "OPTION=3"; OdbcConnection MyConn = new OdbcConnection(MyConString); MyConn.Open(); OdbcCommand mycm = new OdbcCommand("select * from hello",MyConn); OdbcDataReader msdr = mycm.ExecuteReader(); while(msdr.Read()) { if (msdr.HasRows) { Console.WriteLine(msdr.GetString(0)); } } msdr.Close(); MyConn.Close();}public void Connect_Net(){ string myC; MySqlConnection mycn = new MySqlConnection(myConnectionString); mycn.Open(); MySqlCommand mycm = new MySqlCommand("select * from hello",mycn); MySqlDataReader msdr = mycm.ExecuteReader(); while(msdr.Read()) { if (msdr.HasRows) { Console.WriteLine(msdr.GetString(0)); } } msdr.Close(); mycn.Close();}public static void Main(){ ConnectMySql ms = new ConnectMySql(); ms.Connect_CoreLab(); ms.Connect_Odbc(); Connect_Net();}}
</pre><pre name="code" class="cpp"><span style="color: rgb(51, 51, 51); font-family: 'times new roman', times; font-size: 14px; line-height: 25px;">编写.java文件来演示一下如何访问MySQL数据库。</span>import java.sql.*;public class JDBCTest {public static void main(String[] args){ // 驱动程序名 String driver = "com.mysql.jdbc.Driver"; // URL指向要访问的数据库名scutcs String url = "jdbc:mysql://127.0.0.1:3306/scutcs"; // MySQL配置时的用户名 String user = "root"; // MySQL配置时的密码 String password = "root"; try { // 加载驱动程序 Class.forName(driver); // 连续数据库 Connection conn = DriverManager.getConnection(url, user, password); if(!conn.isClosed()) System.out.println("Succeeded connecting to the Database!"); // statement用来执行SQL语句 Statement statement = conn.createStatement(); // 要执行的SQL语句 String sql = "select * from student"; // 结果集 ResultSet rs = statement.executeQuery(sql); System.out.println("-----------------"); System.out.println("执行结果如下所示:"); System.out.println("-----------------"); System.out.println(" 学号" + "\t" + " 姓名"); System.out.println("-----------------"); String name = null; while(rs.next()) { // 选择sname这列数据 name = rs.getString("sname"); // 首先使用ISO-8859-1字符集将name解码为字节序列并将结果存储新的字节数组中。 // 然后使用GB2312字符集解码指定的字节数组 name = new String(name.getBytes("ISO-8859-1"),"GB2312"); // 输出结果 System.out.println(rs.getString("sno") + "\t" + name); } rs.close(); conn.close(); } catch(ClassNotFoundException e) { System.out.println("Sorry,can`t find the Driver!"); e.printStackTrace(); } catch(SQLException e) { e.printStackTrace(); } catch(Exception e) { e.printStackTrace(); } } }
0 0
- mysql.c
- C mysql
- C#MYSQL
- mysql c
- C mysql
- c mysql
- c连接MYSQL例子
- Mysql C api
- c连接mysql数据库
- mysql c 接口大全
- c#+mysql 软件解决方案
- mysql 与C#【转】
- mysql c preparestatement
- MySQL與C編程筆記
- C#ODBC连接MYSQL
- MySQL的c调用
- vc c mysql
- MYSQL C API
- 【iOS学习笔记】NSBundle介绍和使用
- Form中格式化数字、金额(使用 app_currency.Line_Dyn_Currency)
- 【IOS】Undefined symbols for architecture x86_64
- ThreadLocal用法和实现原理
- 欢迎使用CSDN-markdown编辑器
- mysql c++
- VC编程实现对位图图像自动色阶处理
- android lcd调试 高通平台lcd调试深入分析总结(mipi和rgb接口)
- 【iOS学习笔记】UIalertview
- VC编程实现位图拷贝、切除白边
- c++中的段错误(segment fault)
- 为什么大网站把脚本、样式、图片等资源放在一个独立域名下?
- 安卓在JNI操作Surface
- 韦东山第二期视频之心得体会