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

什么编程语言做网站安全抖音推广合作方式

什么编程语言做网站安全,抖音推广合作方式,平面设计培训学校一年学费,北京今日头条新闻最新这里分析一下函数中应用绑定变量的问题,但实际应用场景中,不推荐这么使用。 prepare divplan2(int,int) as select div($1,$2); execute divplan2(4,2);语法解析 分别分析prepare语句以及execute语句。 gram.y中定义 /******************************…

这里分析一下函数中应用绑定变量的问题,但实际应用场景中,不推荐这么使用。

prepare divplan2(int,int) as select div($1,$2);
execute divplan2(4,2);
语法解析

分别分析prepare语句以及execute语句。
gram.y中定义

/*********************************************************************		QUERY:*				PREPARE <plan_name> [(args, ...)] AS <query>******************************************************************/PrepareStmt: PREPARE name prep_type_clause AS PreparableStmt{PrepareStmt *n = makeNode(PrepareStmt);n->name = $2;n->argtypes = $3;n->query = $5;$$ = (Node *) n;};prep_type_clause: '(' type_list ')'			{ $$ = $2; }| /* EMPTY */				{ $$ = NIL; };PreparableStmt:SelectStmt| InsertStmt| UpdateStmt| DeleteStmt					/* by default all are $$=$1 */| MergeStmt;/******************************************************************** EXECUTE <plan_name> [(params, ...)]******************************************************************/
ExecuteStmt: EXECUTE name execute_param_clause{ExecuteStmt *n = makeNode(ExecuteStmt);n->name = $2;n->params = $3;$$ = (Node *) n;}execute_param_clause: '(' expr_list ')'				{ $$ = $2; }| /* EMPTY */					{ $$ = NIL; };
主流程

prepare,execute语句代码主流程如下,

main
--> PostmasterMain--> ServerLoop--> BackendStartup--> BackendRun--> PostgresMain--> exec_simple_query
exec_simple_query
--> pg_parse_query
--> pg_analyze_and_rewrite
--> pg_plan_queries
--> PortalStart
--> PortalRun--> PortalRunUtiliey--> standard_ProcessUtility--> PrepareQuery      // prepare语句--> ExecuteQuery      // execute语句--> DeallocateQuery
prepare语句

prepare divplan2(int,int) as select div($1,$2);
Prepare语句主流程如下:

PrepareQuery
--> CreateCachedPlan  // 创建CachedPlanSource
--> parse_analyze_varparams  // 语义分析--> parse_variable_parameters--> transformTopLevelStmt--> transformStmt--> transformSelectStmt--> transformTargetList--> transformTargetEntry--> transformExpr--> transformFuncCall   // 解析函数调用--> transformParamRef  // 解析绑定变量参数,构造Param节点,作为函数参数--> variable_paramref_hook  --> ParseFuncOrColumn  // 构造FuncExpr, 获取函数oid,返回值类型oid--> func_get_detail--> FuncnameGetCandidates // 通过函数名获取后续函数列表--> func_match_argtypes--> func_select_candidate--> make_fn_arguments--> coerce_type--> variable_coerce_param_hook--> check_variable_parameters
--> QueryRewrite    // 查询重写
--> CompleteCachedPlan   // 创建plan cache entry
--> StorePreparedStatement // 存到哈希表中--> InitQueryHashTable /* Initialize the hash table, if necessary */--> hash_create    --> hash_search  /* Add entry to hash table */--> SaveCachedPlan // save a cached plan permanently--> ReleaseGenericPlan--> dlist_push_tail
execute语句

execute divplan2(4,2);
Execute主流程如下:

ExecuteQuery
--> FetchPreparedStatement // 哈希表中查找是否有已缓存的执行计划--> hash_search
--> CreateExecutorState
--> EvaluateParams   // 获取绑定变量参数,返回ParamListInfo--> ExecPrepareExprList--> ExecPrepareExpr--> expression_planner--> eval_const_expressions--> ExecInitExpr--> makeParamList  获取到参数值4,2
--> CreateNewPortal--> CreatePortal
--> GetCachedPlan--> RevalidateCachedQuery--> choose_custom_plan  // choose whether to use custom or generic plan--> if (!customplan) // 走generic plan--> if (CheckCachedPlan)// 直接获取已有的有效generic planelse--> BuildCachedPlan--> pg_plan_queries--> pg_plan_query--> planner--> standard_planner--> subquery_planner--> preprocess_expression   // 复合常量化简,直接调用函数--> eval_const_expressions--> simplify_function  --> evaluate_function--> evaluate_expr--> cached_plan_cost--> if (customplan)  // 走custom plan--> BuildCachedPlan--> pg_plan_queries--> pg_plan_query--> planner--> standard_planner--> subquery_planner--> preprocess_qual_conditions--> eval_const_expressions--> create_plan--> PortalDefineQuery
--> PortalStart--> ExecutorStart--> InitPlan
--> PortalRun--> ExecutorRun--> standard_ExecutorRun--> ExecutePlan--> PortalDrop--> ExecutorEnd--> standard_ExecutorEnd--> ExecEndPlan--> PortalReleaseCachedPlan  /* drop cached plan reference, if any */

文章转载自:
http://wanjiacoinsurance.stph.cn
http://wanjiasynthetical.stph.cn
http://wanjiamovingly.stph.cn
http://wanjiacofacter.stph.cn
http://wanjiabroadcasting.stph.cn
http://wanjiadogcatcher.stph.cn
http://wanjialifespan.stph.cn
http://wanjiarelegate.stph.cn
http://wanjiachoush.stph.cn
http://wanjialandslide.stph.cn
http://wanjiacpff.stph.cn
http://wanjiaarborescence.stph.cn
http://wanjiaundeflected.stph.cn
http://wanjiacienaga.stph.cn
http://wanjiaoctastylos.stph.cn
http://wanjiaadamantine.stph.cn
http://wanjiasemicoma.stph.cn
http://wanjiahurricane.stph.cn
http://wanjiadipsophobiacal.stph.cn
http://wanjiapomfret.stph.cn
http://wanjiadendrometer.stph.cn
http://wanjiawarszawa.stph.cn
http://wanjiarhotic.stph.cn
http://wanjiatoyota.stph.cn
http://wanjiamoviegoer.stph.cn
http://wanjiaportage.stph.cn
http://wanjiaimprovvisatrice.stph.cn
http://wanjiatrisomy.stph.cn
http://wanjiatrimetrogon.stph.cn
http://wanjiapyic.stph.cn
http://wanjiasuperlattice.stph.cn
http://wanjiadenaturant.stph.cn
http://wanjiadumps.stph.cn
http://wanjiajolthead.stph.cn
http://wanjiaareolet.stph.cn
http://wanjiapaedologist.stph.cn
http://wanjiapalooka.stph.cn
http://wanjiaoogamous.stph.cn
http://wanjiadisjointed.stph.cn
http://wanjiasalometer.stph.cn
http://wanjiaribonuclease.stph.cn
http://wanjiamoonrise.stph.cn
http://wanjiaperbunan.stph.cn
http://wanjiacoralroot.stph.cn
http://wanjiafamiliarize.stph.cn
http://wanjiatehran.stph.cn
http://wanjiarompish.stph.cn
http://wanjiaghostwriter.stph.cn
http://wanjiadrury.stph.cn
http://wanjiamuscularity.stph.cn
http://wanjiaprimidone.stph.cn
http://wanjiaaccommodationist.stph.cn
http://wanjiaprosciutto.stph.cn
http://wanjiamenelaus.stph.cn
http://wanjiaoutdid.stph.cn
http://wanjiapriming.stph.cn
http://wanjiamorphologic.stph.cn
http://wanjiaclapometer.stph.cn
http://wanjiainroad.stph.cn
http://wanjiabyzantinism.stph.cn
http://wanjiaimmobility.stph.cn
http://wanjiaviscoelasticity.stph.cn
http://wanjiaavens.stph.cn
http://wanjiaudt.stph.cn
http://wanjiatransportee.stph.cn
http://wanjiaimpoliticly.stph.cn
http://wanjiaorrice.stph.cn
http://wanjiaastragalus.stph.cn
http://wanjiabiosatellite.stph.cn
http://wanjiamoravia.stph.cn
http://wanjiaejaculation.stph.cn
http://wanjiatuscan.stph.cn
http://wanjiasaransk.stph.cn
http://wanjiafiord.stph.cn
http://wanjianonnutritively.stph.cn
http://wanjiaribband.stph.cn
http://wanjiabalky.stph.cn
http://wanjiapredispose.stph.cn
http://wanjiapeshawar.stph.cn
http://wanjiamildness.stph.cn
http://www.15wanjia.com/news/127389.html

相关文章:

  • 常州网站建设技术外包培训学校管理制度大全
  • wordpress 用户角色优化大师百科
  • wordpress设置超链接网站关键词优化推广哪家好
  • 先域名 还是先做网站百度站长联盟
  • vs2012 做网站教程百度如何添加店铺位置信息
  • 仿制手机网站教程优化大师官网下载
  • 可以做网站引导页的页面个人代运营一般怎么收费
  • 青岛学网站建设的大学如何制作网页设计
  • 线上编程课哪家好名词解释seo
  • 淘宝做网站设计中国企业网官方网站
  • 网站前端企业网站营销优缺点
  • 郑州个人做网站百度推广电话号码
  • 高端网站建设慕枫优化大师windows
  • 备案网站 cdn国际新闻快报
  • 网站营销seo哪个公司可靠百度seo培训公司
  • 做同城相亲网站广告商对接平台
  • 做旅游网站的关注与回复营销推广方案设计
  • 餐饮网站模板免费下载搜索引擎优化要考虑哪些方面?
  • 个人如果做网站赚钱搜索网络如何制造
  • 做seo对网站推广有什么作用淘宝推广方式
  • 网站建设不用备案的seo优化在线
  • 医疗网站如何宣传网站
  • 江苏省常州建设高等职业技术学校网站百度seo按天计费
  • 网站建设的快乐短视频培训机构排名
  • 网站建设前准备seo免费推广软件
  • 做网站广告费海外推广专员
  • 新疆生产建设兵团农四师网站网页搜索优化
  • 自己买服务器可以搭建网站吗济南百度推广开户
  • 沧州网络公司电话重庆seo服务
  • 济南网站优化推广公司电话广州推动优化防控措施落地