‘壹’ 如何自动化完成sql审核
很多游戏项目都是通过每周更新大版本来维持用户的粘性和活跃度,而更新版本必然伴随着数据库的新建create、改表alter的SQL。
运维或者dba负责审核这类sql是否合理、高效,因为很多开发同事特别是经验少的新人是不考虑sql性能、是否合乎MySQL的最佳实践。
经常很多建表语句漏加索引或者加错索引(不满足最左匹配等情况),需要等到开服后数据库负载过高引起告警才发现问题。
MySQL的配置中有一个日志是记录没有使用索引的sql,记录进slow log日志中,不过实际使用过程中,的确存在着很多合理的不使用索引的情况,所以这个日志一般不打开。
为了避免人工审阅的重复劳动,所以运维可以通过写程序、脚本来自动审核sql,而审核的条件一般如下:
1、表结构是否合法 //不合法当然不能通过
2、表名、列名长度超过 16 //主要跟我们自己的授权有关系
3、必须有 unsigned //业务最容易忘记添加,当然如果一定要负值,那么就走人工审核;
4、必须为 InnoDB //当然了,我已经忘记还有MyISAM了,统计日志表除外
5、int bigint(10) 不能小于 10 //大家见过int(1)的情况么?
6、varchar 长度小于 3000 // 这也算是一个人为规定,没有任何意义
7、text 字段个数不能大于 3 //人为规定而已
8、主键必须为 int 类型 //不int,真的会死人
9、索引不能有重复 //见过key(id),key(id,uid)的情况吗?
10、索引个数不能大于 5 个(包括主键) //人为定义而已
11、索引字段必须为 not null,并且有 default 值 //参照高性能那本书说的,其实不一定影响性能
12、SQL 是否使用到索引 //不能用到索引的SQL,真的很惨
13、SQL 中不能有 * //由于* 经常导致流量、O巨大,所以,也强制了
14、自增字段必须为 int 或者 bigint //见过自增用smallint的吗?然后一下就溢出了
15、请不要使用MySQL的保留字(Reserved Words) //写脚本,大家讨厌<`>符号么?
开发提交sql后,会直接调用后端审核程序,程序根据以上规则,进行审核,就极大的降低了运维、DBA的工作量。
当sql审核通过后,是否马上执行?
根据以下情况判断:
1、表小于10w行,小于10M空间大小,那么直接执行SQL;
2、如果不满足1,并且满足percona online-schema-change条件,那么通过osc工具,进行在线修改;
3、如果1、2都不行,走人工上线流程;
‘贰’ 将sharepoint表单库中的表单审批完成之后自动保存到sql server数据库中问题
这个很容易。你先建一个外部内容类型(内含外部数据源),然后建立外部列表。最后通过工作流在外部列表中赋值即可。
‘叁’ .Net要实现一个订单模块的话用到什么技术 请详细说出具体的知识点。基础分100,好的话会加更多分
如果有订单生成的话,一般就用到审批流,订单的信息可以放数据库的表里面,最好放在两张表里边,一个主表一个子表,再依据主表建个审批表,最基本的订单流程就处来了,JavaScript用到一些数据验证,数据回发。 session的话,如果是以用户操作就需要session,有了用户就会有权限,权限和审批流联系起来这个小软件就差不多了吧
接收订单的信息,可以是手工录入的,也可以是提前设定一些信息用户选择,或者扫描二维码的方式也可以接收到购物的信息
难点在数据的逻辑结构,技术不用太高
‘肆’ 软件实施中的工作流。审批流分别指的是什么
工作流,也就是流程引擎,也就是督促工作需要的流程,流转的工作步骤;
譬如请假有个请假流程;签合同有签单流程;项目开发流程等,都需要通过流程梳理,创建,流程执行,流程闭环等
流程大概分类是端到端;点到点;以及整体流程来实现:具体下图给出一些综合观点,
‘伍’ 泛微oa中,怎么连接外部oracle数据库 csdn
泛微OA—Oracle's JDE集成应用方式
1、JDE作为数据库
供应商信息、客户信息、产品线信息等在JDE中作为数据库被OA应用;OA通过数据加工,将OA流程各表单与JDE数据相对应;OA流程搭载JDE数据库信息,为审批提依据。
2、OA作为审批流
OA流程发起时,自动抓取JDE基础数据,审批后结果自动回写至JDE,保证数据的一致性与准确性。OA流程提供审批意见,支持移动审批,搭载审批依据,有效弥补了JDE的审批短板,实现了信息集中统一管控。
3、数据融合,报表展现
系统的集成实现了数据融合,OA系统自动归集各项数据,形成统一报表,方便管理者实时掌握企业运营动态。
‘陆’ 什么是审批流
通俗的说就是一个完整的审批流程。
审批流定义节点用来为某个具体的业务单据或某个具体单据的一个业务类型进行审批流程的定义。被定义了审批流程的单据将按照定义的审批流程被传递和审批。这一完整的过程就称为审批流、
‘柒’ 什么是项目管理软件工作流与审批流
一、审批流:审批流是用来,为某个具体的业务单据进行审批流程的定义。被定义了审批流程的单据将按照定义的审批流程被传递和审批。也就是讲审批流只是针对同一种单据的审批管理而已。比如,我们要对合同付款定义审批流程为,张三填写付款申请--李四负责初审--王负责二审--总经理负责终审,不管合同付款的审批有多少级,多少人参与,但都是只对合同付款这一种单据设置的审批流程而已,这就是审批流。
二、工作流:工作流引擎就是工作流程的计算模型,就是将工作流程中的工作如何前后组织在一起的逻辑和规则,通过项目管理软件来实现了。用上面的合同付款来接着讲,如果一个企业是这样规定合同付款作业流程的,所有合同付款业务必须是从合同创建--合同结算-合同付款,也就是讲没有做合同结算就不能进行合同付款申请,没有创建合同就不能做合同结算。这种规范了某类业务的前后作业顺序的功能,就是工作流。工作流与审批流不是冲突的,应该讲审批流是对工作流中的某一种具体单据的更细化流程管理。
‘捌’ 数据库处理问题(审批流程定义)
1、用户表
用户ID
用户角色(1:业务员,2:经理,3:总经理,4:总裁。。。)
用户姓名
2、客户表
客户ID
客户名称
3、业务员客户表
用户ID(其实就是用户表里的用户角色为业务员的用户)
客户ID
4、业务员移交客户申请表
申请人用户ID
申请移交的客户ID
审批状态(0:审批中,1:已审批。。。。)
移交后用户ID
5、请假表
用户ID
请假开始时间
请假结束时间
请假类别(1:事假、2:病假、3:婚假。。。。。)
审批状态(0:审批中,1:已审批。。。。)
6、周报表
用户ID
周报月份
审批状态(0:临时保存,1:已提交,2:经理已审批,3:总经理已审批。。。。)
‘玖’ 求大神指教sql语句怎么写
这是审批流,
如果‘郭琳琪’不是固定的,要增加一个字段,下级审核人。
CASE WHEN ( [Status]='100') THEN CName
WHEN ([Status]='104') THEN '郭琳琪' --或者[下级审核]
ELSE '郭琳琪' END