cpp选手秋招学习笔记 day12

一、场景题

1.数据库delete truncate drop的区别

delete是行级别删除、truncate会重置自增主键清空数据表、drop是释放存储空间,更彻底地摧毁结构

delete之后自增主键不释放,继续增加

2.mysql执行一条语句经过的组件

连接器、解析器、优化器、执行器------到存储引擎执行

连接器处理和客户端连接

优化器比如去优化索引

3.Inner联结

联结是查两个表匹配的数据,还有左联结和右联结,其中分别代表左右表是主表

默认的联结只返回在两个表严格匹配的交集,左联结和右联结对于主表的都显示,右表匹配不上的用None。

可能会遇到的问题是比如订单如果不能匹配到人就有问题。

4.四种隔离级别分别是什么,innodb的默认隔离级别

读未提交、读提交、可重复读、可串行化

默认可重复读,读未提交是有各种问题,读提交解决了脏读,可重复读解决了不可重复读,可串行化解决了幻读

5.DDL DML DCL

区别是分别是针对库的,操作具体的增删改查,控制用户权限

6.分库分表的自增主键的解决

使用snowflake,使用中心数据库或Redis,使用uuid

snowflake的问题是如果时间回退可能出现重复主键,uuid的问题是需要的空间大,资源浪费

二、langchain相关

主要是和api相关的知识

1.在调用api引入上下文的一种方式是使用消息

消息是模型对话的基本单元,包括四种:系统、用户、ai、tool

可以使用json或者SystemMessage这些去调用。

1.python的列表

python是\[\]来表示列表

2.messages=[

SystemMessage("..."),

HumanMessage(),

AIMessage()

,

HumanMessage...]

3.profile是模型的一些相关信息,print

model.profile

4.langsmith是监考和调试调用模型的一个平台,需要申请api,然后在.env去配置,然后每次调用在langsmith能看

5.stream和batch的调用

invoke是阻塞式的完整的调用,stream是流式调用,会像在网页对话一样,返回的是一个迭代器,然后去打印。

batch可以同时传递一个列表的信息,然后返回的response也是多个信息,可以对应打印,批处理。

相关推荐
Wang's Blog1 小时前
PostgreSQL笔记38:慢查询定位与优化的系统方法论
数据库·笔记·postgresql
GeekPlusA2 小时前
ai-opendesign学习
学习
XiaQ09192 小时前
Linux 常用命令学习笔记(用户管理篇):用户、组与权限的钥匙
linux·开发语言·笔记·学习
He BianGu2 小时前
【笔记】使用Assembly.LoadFrom和AssemblyLoadContext加载插件对比,以及有没有更合适的加载插件方案
笔记
hhwyqwqhhwy2 小时前
正点原子-ZYNQ7020 开发笔记
笔记
LuminousCPP2 小时前
栈和队列专题(四):LeetCode 232. 用栈实现队列|双栈分工 + 按需迁移 + 摊还 O(1)
c语言·数据结构·笔记·算法·leetcode
Zkaisen2 小时前
mtreoCVE-2025-11953学习(目录遍历与远程命令执行)
学习·react native·react.js·metro
GGMM7892 小时前
富士 EP‑3957E‑C4 电源驱动板维修实战笔记
笔记·变频器·变频器维修
小淮AI2 小时前
外籍子女在华读书,中文“听得懂”和“学得深”之间差几步?
学习