You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

iOS使用OHMySQL对接MySQL时NSError静态分配报错如何修复

OHMySQL编译报错修复方案

1. Interface type cannot be statically allocated 错误修复

该错误属于Objective-C基础语法问题:所有继承自NSObject的类都必须通过指针声明、在堆上分配内存,不支持栈静态分配。你修改为NSError *error;的操作是正确的,修改后该错误就会解决,正确代码片段如下:

OHMySQLQueryRequest *query = [OHMySQLQueryRequestFactory INSERT:@"tasks" set:@{ @"name": @"Something", @"description": @"new task" }];
NSError *error;
[queryContext executeQueryRequest:query error:&error];

额外注意:原代码里字段keydesctiption拼写错误,正确应为description,否则会出现插入字段不匹配的运行时错误

2. framework not found 错误修复

按以下步骤排查即可:

  • 检查集成方式:
    • 若使用CocoaPods集成:确认Podfile中已添加pod 'OHMySQL',且执行过pod install命令,后续编译必须打开项目根目录下后缀为.xcworkspace的文件,不能打开原来的.xcodeproj文件
    • 若手动集成:确认OHMySQL的framework文件已添加到项目的「General > Frameworks, Libraries, and Embedded Content」列表中,同时framework的存放路径已正确配置到「Build Settings > Framework Search Paths」
  • 检查链接参数:在「Build Settings > Other Linker Flags」中添加-ObjC参数,避免OC类别方法无法识别引发的框架相关报错
  • 清理缓存:按Command+Shift+K清理构建缓存后重新编译

内容的提问来源于stack exchange,提问作者ToothFairy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.08 04:09:02