(self,keys,param)
| 548 | raise public.PanelError("数据库保存出错:因磁盘空间不足,当前数据库为只读状态,无法更新数据,请通过文件释放一些磁盘空间后重试!") |
| 549 | |
| 550 | def save(self,keys,param): |
| 551 | #更新数据 |
| 552 | self.write_lock() |
| 553 | self.clear_files() |
| 554 | self.__GetConn() |
| 555 | self.is_read_only() |
| 556 | self.__DB_CONN.text_factory = str |
| 557 | param = self.en_crypt(keys,param) |
| 558 | try: |
| 559 | opt = "" |
| 560 | for key in keys.split(','): |
| 561 | opt += key + "=?," |
| 562 | opt = opt[0:len(opt)-1] |
| 563 | sql = "UPDATE " + self.__DB_TABLE + " SET " + opt+self.__OPT_WHERE |
| 564 | |
| 565 | #处理拼接WHERE与UPDATE参数 |
| 566 | tmp = list(self.__to_tuple(param)) |
| 567 | for arg in self.__OPT_PARAM: |
| 568 | tmp.append(arg) |
| 569 | self.__OPT_PARAM = tuple(tmp) |
| 570 | result = self.__DB_CONN.execute(sql,self.__OPT_PARAM) |
| 571 | self._close() |
| 572 | self.__DB_CONN.commit() |
| 573 | self.rm_lock() |
| 574 | return result.rowcount |
| 575 | except Exception as ex: |
| 576 | err = str(ex) |
| 577 | if 'database or disk is full' in err: |
| 578 | raise public.PanelError("数据库保存出错:磁盘空间不足,请通过[文件管理]释放一些磁盘空间后重试!") |
| 579 | raise public.PanelError("数据库保存出错:" + "error: " + str(ex)) |
| 580 | # return "error: " + str(ex) |
| 581 | |
| 582 | def delete(self,id=None): |
| 583 | #删除数据 |
no test coverage detected