mysql 常用数据类型

需求 mysql 常用的数据类型 解决 常用的就是 整型,二进制,文本 整型 类型 存储字节 说明 TINYINT 1 -128 ~ 127 SMALLINT 2 -32768 ~ 32767 MEDIUMINT 3 -8388608 ~ 8388607 INT (INTEGHR) 4 -2147483648 ~ 2147483647 BIGINT 8 -9223372036854775808 ~ 9223372036854775807 blob 类型 存储字节 说明 TINYBLOB 0 ~ 255 字节 短文本二进制 BLOB 0 ~ 65 KB 普通二进制 MEDIUMBLOB 0 ~ 16 MB 长文本二进制 LONGBLOB 0 ~ 4 GB 极大文本二进制 text 类型 存储大小 说明 TINYTEXT 0 ~ 255 字节 一般文本字符串 TEXT 0 ~ 65 535 字节 长文本字符串 MEDIUMTEXT 0 ~ 16 772 150 字节 较大文本数据 LONGTEXT 0 ~ 4 294 967 295 字节 极大文本数据 参考 MySQL INT、TINYINT、SMALLINT、MEDIUMINT、BIGINT(整数类型) MySQL 中 blob 和 text 数据类型详解 怎么在MySQL数据库保存图片 MySQL中整各种int类型的范围和存储大小 MySQL int 类型长度有啥用? int(11) 和 int(20) 有啥区别? Mysql存储大数据字符串

<span title='2023-11-06 16:34:00 +0800 CST'>2023-11-06</span>&nbsp;·&nbsp;1 min&nbsp;·&nbsp;117 words&nbsp;·&nbsp;RamLife

QT 打印当前线程

需求 qt 打印当前线程进程 解决 当前线程指针: QThread::currentThread() 当前线程: QThread::currentThreadId() 当前进程: QCoreApplication::applicationPid() 参考 QT打印当前线程地址 【Qt线程-6】获取当前线程id,thread()和currentThreadId(),不是想当然那样,不使用信号槽可能看不出区别

<span title='2023-11-06 10:18:00 +0800 CST'>2023-11-06</span>&nbsp;·&nbsp;1 min&nbsp;·&nbsp;13 words&nbsp;·&nbsp;RamLife

mysql 存储过程分页操作

需求 mysql 存储过程做分页操作 解决 参考: SQL存储过程实现数据分页功能 mysql中用存储过程做分页操作 SQL Server存储过程之通用数据分页 SQL Server存储过程学习(通俗易懂) MySQL分页查询的5种方法 参考

<span title='2023-11-05 16:34:00 +0800 CST'>2023-11-05</span>&nbsp;·&nbsp;1 min&nbsp;·&nbsp;13 words&nbsp;·&nbsp;RamLife

QT 减少控件间的间隙

需求 qt 默认情况下,控件之间的间隙比较大,不好看,需要减少间隙 解决 这个其实很简单,直接调用 api 即可。 layout_->setContentsMargins(0,0,0,0); layout_->setSpacing(0); 参考 【QT】Layout布局间消除间隙(修改layout内置参数) QT 布局管理器设置控件固定大小,控件间隔 QT布局管理器不同部分比例大小设置方法

<span title='2023-11-05 11:43:00 +0800 CST'>2023-11-05</span>&nbsp;·&nbsp;1 min&nbsp;·&nbsp;14 words&nbsp;·&nbsp;RamLife

QT 自定义分页

需求 qt 自定义分页控件 解决 具体参考: QT 自定义分页控件 第十四课:采用 Qt 开发翻页/分页/多页窗体组件 参考 QT 自定义分页控件 第十四课:采用 Qt 开发翻页/分页/多页窗体组件

<span title='2023-11-05 10:43:00 +0800 CST'>2023-11-05</span>&nbsp;·&nbsp;1 min&nbsp;·&nbsp;16 words&nbsp;·&nbsp;RamLife

java 枚举中使用字符串

需求 java 中 枚举中使用字符串 解决 public class HelloWorld { public static void main(String []args) { System.out.println("Hello World!"); System.out.println(Season.SPRING.toString()); System.out.println(Season.SPRING.value()); } } enum Season { SPRING("spring"), SUMMER("summer"), AUTUMN("autumn"), WINTER("winter"); public final String value; private Season(String value) { this.value = value; } public String value() { return this.value; } } 参考 Java灵活使用枚举表示一组字符串 在Java 使用字符串添加枚举

<span title='2023-11-05 10:37:00 +0800 CST'>2023-11-05</span>&nbsp;·&nbsp;1 min&nbsp;·&nbsp;52 words&nbsp;·&nbsp;RamLife

QT QString 设置位数

需求 qt 如何设置 QString 中数值的小数位数 解决 位数,进制,补位 QString QString::arg(uint a, int fieldWidth = 0, int base = 10, QChar fillChar = QLatin1Char( ' ' )) const int num = 3; QString str = QString("%1") .arg(num, 4, 10, QChar('0')); // str == "0003" qDebug() << str; 小数位数 QString QString::number(double n, char format = 'g', int precision = 6) QString str = QString::number(32, 'f', 2); // str == "32.00" qDebug() << str; 参考 Qt QString中arg的使用,以及保留小数位数 QString设置小数点精度位数 Qt string 保留小数点后固定位数

<span title='2023-11-05 10:18:00 +0800 CST'>2023-11-05</span>&nbsp;·&nbsp;1 min&nbsp;·&nbsp;77 words&nbsp;·&nbsp;RamLife

QT log 输出到文件

需求 qt 如何把 log 输出到文件 解决 log 输出功能 log_qt.h #ifndef LOG_QT_H #define LOG_QT_H #include <QString> void LogOutputMessage(QtMsgType type, const QMessageLogContext &context, const QString &msg); #endif // LOG_QT_H log_qt.cpp #include "log/log_qt.h" #include <QString> #include <QMutex> #include <QDateTime> #include <QFile> void LogOutputMessage(QtMsgType type, const QMessageLogContext &context, const QString &msg) { // 加锁 static QMutex mutex; mutex.lock(); QString tag; switch(type) { case QtDebugMsg: tag = QString("Debug:"); break; case QtWarningMsg: tag = QString("Warning:"); break; case QtCriticalMsg: tag = QString("Critical:"); break; case QtFatalMsg: tag = QString("Fatal:"); break; default:break; } // 设置输出信息格式 // QString context_info = QString("File:(%1) Line:(%2)")....

<span title='2023-11-04 10:18:00 +0800 CST'>2023-11-04</span>&nbsp;·&nbsp;2 min&nbsp;·&nbsp;248 words&nbsp;·&nbsp;RamLife

c++ find, find_if, find_if_not

需求 cpp 了解 find 相关函数 解决 find 的语法格式 InputIterator find (InputIterator first, InputIterator last, const T& val); //find() 函数作用于普通数组 char stl[] ="http://c.biancheng.net/stl/"; //调用 find() 查找第一个字符 'c' char * p = find(stl, stl + strlen(stl), 'c'); //判断是否查找成功 if (p != stl + strlen(stl)) { cout << p << endl; } //find() 函数作用于容器 std::vector<int> myvector{ 10,20,30,40,50 }; std::vector<int>::iterator it; it = find(myvector.begin(), myvector.end(), 30); if (it != myvector.end()) cout << "查找成功:" << *it; else cout << "查找失败"; find_if 可以指定查找规则。语法: InputIterator find_if (InputIterator first, InputIterator last, UnaryPredicate pred); //自定义一元谓词函数 bool mycomp(int i) { return ((i % 2) == 1); } //以函数对象的形式定义一个 find_if() 函数的查找规则 class mycomp2 { public: bool operator()(const int& i) { return ((i % 2) == 1); } }; int main() { vector<int> myvector{ 4,2,3,1,5 }; //调用 find_if() 函数,并以 IsOdd() 一元谓词函数作为查找规则 vector<int>::iterator it = find_if(myvector....

<span title='2023-10-31 15:30:00 +0800 CST'>2023-10-31</span>&nbsp;·&nbsp;1 min&nbsp;·&nbsp;198 words&nbsp;·&nbsp;RamLife

c++ 重载运算符 <

需求 cpp 需要对 array 中的对象进行排列,使用 sort 的情况下,默认需要重载 <, 才能实现相关功能。 解决 选择的是,在结构体内部进行重载。 struct PatientDataHead { // increment id int32_t id; bool operator <(const PatientDataHead& head) const {return id < head.id;} }; std::array<PatientDataHead, kPatientNum> patient_data_heads_ {}; std::sort(patient_data_heads_.begin(), patient_data_heads_.end()); 参考 C++中自定义比较函数和重载运算符总结

<span title='2023-10-31 11:27:00 +0800 CST'>2023-10-31</span>&nbsp;·&nbsp;1 min&nbsp;·&nbsp;38 words&nbsp;·&nbsp;RamLife