电子商务网站建设期末photoshop手机版在线使用
web/
2025/9/30 17:32:51/
文章来源:
电子商务网站建设期末,photoshop手机版在线使用,企业网站规划要求,网站后台关键词链接怎样做一.数据类型
MySQL中有多种数据类型#xff0c;每种类型用于存储不同类型的数据。以下是MySQL中常见的数据类型#xff1a; 数值类型#xff1a; INT#xff1a;整数类型#xff0c;存储范围为-2,147,483,648到2,147,483,647。BIGINT#xff1a;大整数类型#xff0c;存…一.数据类型
MySQL中有多种数据类型每种类型用于存储不同类型的数据。以下是MySQL中常见的数据类型 数值类型 INT整数类型存储范围为-2,147,483,648到2,147,483,647。BIGINT大整数类型存储范围为-9,223,372,036,854,775,808到9,223,372,036,854,775,807。FLOAT单精度浮点数类型。DOUBLE双精度浮点数类型。DECIMAL定点数类型用于精确存储小数。 字符串类型 CHAR固定长度字符串最大长度为255个字符。VARCHAR可变长度字符串最大长度为65535个字符。TEXT长文本类型最大长度为65,535个字符。 日期和时间类型 DATE日期类型格式为YYYY-MM-DD。TIME时间类型格式为HH:MM:SS。DATETIME日期和时间类型格式为YYYY-MM-DD HH:MM:SS。TIMESTAMP时间戳类型用于存储日期和时间的组合。时间戳从1970.1.1的秒数 布尔类型 BOOL 或 BOOLEAN布尔类型存储true或false。 二进制类型 BLOB二进制大对象类型用于存储二进制数据。LONGBLOB长二进制大对象类型用于存储更大的二进制数据。
此外MySQL还支持其他特殊数据类型如枚举类型ENUM和集合类型SET用于存储从预定义选项中选择的值。 二.MYSQL基础知识
多个数据库服务器可以集群工作
一个服务器上有多个数据库一个数据库上有多个数据表
数据库数据表的集合 1.创建MYSQL对象并初始化 MYSQL* mysql new MYSQL();MYSQL* pDB mysql_init(mysql); //初始化mysql对象//这里两个变量 mysql和pDB 两个变量记录指向同一个值避免初始化失败后返回NULL指针内存泄漏的风险if (pDB NULL) {std::cout mysql_init failed! std::endl;return -1;}2.连接数据库 pDB mysql_real_connect(pDB, localhost, root, 1234, mysql, 3306, NULL, 0);
补充
3.创建新的用户 int creat_user(MYSQL* pDB){ //创建新用户std::string sql CREATE USER fclocalhost IDENTIFIED BY ;int ret mysql_real_query(pDB, sql.c_str(), (unsigned long)sql.size());if (ret ! 0) {std::cout mysql error: mysql_error(pDB) std::endl;return -1;}return 0;
}4.给用户授权权限和 撤销权限 int grant_userpower(MYSQL* pDB) { //授予用户权限std::string sql GRANT ALL PRIVILEGES ON *.* TO fclocalhost with grant option;int ret mysql_real_query(pDB, sql.c_str(), (unsigned long)sql.size());if (ret ! 0) {std::cout mysql error: mysql_error(pDB) std::endl;return -1;}return 0;
} 5.删除用户
drop USER fclocalhost
6.MYSQL仓库的创建和删除 int creat_database(MYSQL* pDB) { //创建数据仓库std::string sql CREATE DATABASE hello;int ret mysql_real_query(pDB, sql.c_str(), (unsigned long)sql.size());if (ret ! 0) {std::cout mysql error: mysql_error(pDB) std::endl;return -1;}return 0;
}int grant_database_power(MYSQL* pDB) { //授予仓库权限std::string sql GRANT ALL ON hello.* TO fclocalhost;int ret mysql_real_query(pDB, sql.c_str(), (unsigned long)sql.size());if (ret ! 0) {std::cout mysql error: mysql_error(pDB) std::endl;return -1;}return 0;
}三.MYSQL命令的执行
发送SQL命令 获取SQL执行结果 解析获取到的结果 MYSQL_RES* result mysql_use_result(mysql);
if (result ! NULL) {show_result(result); //展示数据mysql_free_result(result); //释放结果,与use_result相互对应
}
void show_result(MYSQL_RES* result) {//获取结果集列的数量unsigned nFiles mysql_num_fields(result);//获取结果集行的数量my_ulonglong nRows mysql_num_rows(result);//获取每一列的定义接口MYSQL_FIELD* fields mysql_fetch_fields(result);for (unsigned i 0; i nRows; i) { //遍历每一行MYSQL_ROW row mysql_fetch_row(result);//获取每一行结果if (row ! NULL) {for (unsigned j 0; j nFiles; j) {//对于每一行遍历每列的信息std::cout type: fields[j].type fields[j].name : row[j] std::endl; //对应存储数据的值}}std::cout std::endl;}} 附录 完整代码
#include iostream
#include mysql.hvoid show_result(MYSQL_RES* result) {//获取结果集列的数量unsigned nFiles mysql_num_fields(result);//获取结果集行的数量my_ulonglong nRows mysql_num_rows(result);//获取每一列的定义接口MYSQL_FIELD* fields mysql_fetch_fields(result);for (unsigned i 0; i nRows; i) { //遍历每一行MYSQL_ROW row mysql_fetch_row(result);//获取每一行结果if (row ! NULL) {for (unsigned j 0; j nFiles; j) {//对于每一行遍历每列的信息std::cout type: fields[j].type fields[j].name : row[j] std::endl; //对应存储数据的值}}std::cout std::endl;}}int creat_user(MYSQL* pDB){ //创建新用户std::string sql CREATE USER fclocalhost IDENTIFIED BY ;int ret mysql_real_query(pDB, sql.c_str(), (unsigned long)sql.size());if (ret ! 0) {std::cout mysql error: mysql_error(pDB) std::endl;return -1;}return 0;
}int grant_userpower(MYSQL* pDB) { //授予用户权限std::string sql GRANT ALL PRIVILEGES ON *.* TO fclocalhost with grant option;int ret mysql_real_query(pDB, sql.c_str(), (unsigned long)sql.size());if (ret ! 0) {std::cout mysql error: mysql_error(pDB) std::endl;return -1;}return 0;
}int creat_database(MYSQL* pDB) { //创建数据仓库std::string sql CREATE DATABASE hello;int ret mysql_real_query(pDB, sql.c_str(), (unsigned long)sql.size());if (ret ! 0) {std::cout mysql error: mysql_error(pDB) std::endl;return -1;}return 0;
}int grant_database_power(MYSQL* pDB) { //授予仓库权限std::string sql GRANT ALL ON hello.* TO fclocalhost;int ret mysql_real_query(pDB, sql.c_str(), (unsigned long)sql.size());if (ret ! 0) {std::cout mysql error: mysql_error(pDB) std::endl;return -1;}return 0;
}int fe() {MYSQL* mysql new MYSQL();MYSQL* pDB mysql_init(mysql); //初始化mysql对象//这里两个变量 mysql和pDB 两个变量记录指向同一个值避免初始化失败后返回NULL指针内存泄漏的风险if (pDB NULL) {std::cout mysql_init failed! std::endl;return -1;}pDB mysql_real_connect(pDB, localhost, root, 1234, mysql, 3306, NULL, 0);//连接数据库std::cout pDB std::endl;if (pDB) {//creat_user(pDB);//grant_userpower(pDB);//creat_database(pDB);//grant_database_power(pDB);//获取SQL的数据MYSQL_RES* result mysql_use_result(mysql);if (result ! NULL) {show_result(result); //展示数据mysql_free_result(result); //释放结果,与use_result相互对应}}mysql_close(pDB);delete(mysql);return 0;}int main()
{fe();return 0;}
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/84558.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!