@name 获取表字段 @param args['path'] 数据库路径 @param args['table'] 表名 @return list
(self,args)
| 466 | return public.returnMsg(True,'删除成功,共删除数据 {} 条.'.format(count)) #返回成功信息 |
| 467 | |
| 468 | def get_keys_bytable(self,args): |
| 469 | """ |
| 470 | @name 获取表字段 |
| 471 | @param args['path'] 数据库路径 |
| 472 | @param args['table'] 表名 |
| 473 | @return list |
| 474 | """ |
| 475 | |
| 476 | path = args.path |
| 477 | table = args.table |
| 478 | |
| 479 | if not os.path.exists(path): |
| 480 | return public.returnMsg(False,'数据库不存在.') |
| 481 | |
| 482 | data = self.get_database_list() |
| 483 | if not path in data: |
| 484 | return public.returnMsg(False,'数据库不存在.') |
| 485 | |
| 486 | db = self.get_db_info(path) |
| 487 | if not db: |
| 488 | return public.returnMsg(False,'数据库文件错误.') |
| 489 | |
| 490 | result = [] |
| 491 | sql = db['sql'].table(table) |
| 492 | slist = sql.query('PRAGMA table_info({})'.format(table)) |
| 493 | |
| 494 | if not slist: |
| 495 | return public.returnMsg(False, '无法获取表信息或表不存在。') |
| 496 | |
| 497 | for val in slist: |
| 498 | if len(val) >= 6: |
| 499 | result.append({'name': val[1], 'type': val[2].lower(), 'pk': val[5]}) |
| 500 | else: |
| 501 | print("数据格式不符合预期,表可能不含有足够的字段信息。") |
| 502 | continue |
| 503 | |
| 504 | return result |
| 505 | |
| 506 | |
| 507 | def __get_table_pk(self,sql,table): |
nothing calls this directly
no test coverage detected