当前位置: 首页 > news >正文

【SQL】新建库表时,报错attempt to write a readonly database

目录

1.问题背景

2.问题原因

3.解决方式

4.结果


windows64位 + Navicat + sql + vscode + c++ 

1.问题背景

需求是这样:

希望在调用初始化数据库方法时,查看是否有名为【POCT_PROCESS_CONFIG】的数据库表,如果没有就新建

我的数据库格式是这样

我的代码是这样

void SqlWork::db_Init()
{QString sqlstr = "";//创建提取流程管理表(新表),存储卡盒文件、序列化文件、动作文件的名字sqlstr = "CREATE TABLE IF NOT EXISTS [POCT_PROCESS_CONFIG](\[PROCESS_INDEX] INTEGER, \[ID] VARCHAR(64) PRIMARY KEY NOT NULL UNIQUE, \[NAME] VARCHAR(256), \[CARD_NAME] VARCHAR(256), \[SERIALIZE_NAME] VARCHAR(256), \[OPERATE_NAME] VARCHAR(256));";Sql_StrWork(sqlstr);  //这句话是指执行上方的数据库语句
}

但是我在navicat上直接运行sqlstr里的语句时,会报错【attempt to write a readonly database】

2.问题原因

数据库文件没有读写权限

3.解决方式

1)windows上,直接将数据库文件的属性中,把【只读】去掉勾选即可

2)如果你是Linux

在命令行修改文件权限为777即可

sudo chmod 777 ./xxx.db     //xxx.db是你的数据库文件

4.结果

修改文件权限后,再次执行sql语句,即可执行成功,并且有新库表【POCT_PROCESS_CONFIG】被创建

---END---

http://www.lryc.cn/news/193925.html

相关文章:

  • C++ --STL
  • 一卷到底,大明哥带你横扫 Netty
  • Python Opencv实践 - 车辆统计(1)读取视频,移除背景,做预处理
  • ROS-6.参数的使用
  • 机器视觉在自动驾驶汽车中的应用与挑战
  • 欠拟合、过拟合及优化:岭回归
  • Mybatis学习笔记注解/xml映射/动态SQL%%%Mybatis教程
  • Git纯操作版 项目添加和提交、SSH keys添加、远程仓库控制、冲突解决、IDEA连接使用
  • 使用OpenSSL生成自签证书
  • Spring源码解析——Spring事务是怎么通过AOP实现的?
  • 机器人革命:脑洞大开的前沿机器人技术!
  • 微信小程序动态海报
  • 手写单例模式
  • 介绍6种解决电脑找不到vcomp140.dll,无法继续执行代码的方法。
  • mysql数据物理迁移
  • 构建图像金字塔:探索 OpenCV 的尺度变换技术
  • ios app开发环境搭建
  • mysql面试题45:读写分离常见方案、哪些中间件可以实现读写分离
  • 【数字IC设计】DC自动添加门控时钟
  • 前端开发工具vscode
  • 网络基础2(1)
  • 系统文件IO、文件描述符fd、重定向、文件系统、动态库和静态库
  • 一、K8S第一步搭建
  • pwnable-1-fd
  • 队列的实现(c语言)
  • 雷电模拟器上使用第一个frida(五)用python实现逆向分析并模拟登陆
  • 基于Linux上MySQL8.*版本的安装-参考官网
  • git 项目管理操作
  • 数据结构--》掌握数据结构中的排序算法
  • Kubernetes实战(三)-k8s节点设置cpu高于多少就不调度