前端初次使用 Cursor 的必学技巧

常用配置

1. 配置vscode布局

文件->首选项->设置
搜索 workbench.activityBar.orientation 设置值为 vertical

2. 全局设置会话

设置 - > Rules for AI 填充以下:
Always respond in 中文
使用中文 Generate Commit Message
代码注释
使用JSDoc注释

3. .cursorrules 知识库文件开启

设置 -> Include .cursorrules file -> 勾选
可以配置一些项目的背景,或者项目的框架,或者某些限制条件

例如:

这是我的一个cursorrules知识库,针对与当前 xxx 项目,我的知识库需要包含:

  1. 项目背景(当前组件是vue3的一个ui组件库)
  2. 为了后续使用全局函数,全局样式,全局组件的使用,提高代码不重复性,你可以总结到知识库>>中,路经在: ./utils , ./styles ./icons等等
  3. 生成代码需要严格遵循ts语法,以及js逻辑语法,vue3语法…
  4. 注释需要详细,且遵循JSDoc语法
  5. 后续可以自己补充

4. 提交配置

cursor操作

附: 如果需要生成的文档或者代码里有特殊符号,cursor可能会卡断文档,导致无法写入文件中,这时可以使用agent方式。

5. 快捷生成模板代码

  • 进入代码片段设置
    cursor

  • 新建一个全局的代码片段代码
    cursor

  • 举个栗子 我vue3的,当我输入vue3
    cursor
    在这里插入图片描述

常用插件

1. Chinese 中文翻译

cursor

2. Git History 查看git提交日志,历史记录

在这里插入图片描述

3. GitLens 查看git提交记录 (通过 行 灰文提示查看 )

在这里插入图片描述

4. Prettier 格式化代码

在这里插入图片描述
等等根据自己需求添加…

常用快捷键

1. 通用编辑操作

暂时无法在飞书文档外展示此内容

2. 代码编辑相关

暂时无法在飞书文档外展示此内容

3. 分屏与窗口操作

暂时无法在飞书文档外展示此内容

4. AI 相关操作

暂时无法在飞书文档外展示此内容

AI操作技巧

  1. @Files:通用注记,在对话框输入时,会弹出代码仓库检索列表。输入文件名确认后,可将相应文件内容注入上下文。
  2. @Code:通用注记,输入后弹出检索框,通过关键词选择代码块,由开发环境的 LSP 识别代码块,准确性较高。
  3. @Docs:通用注记,从函数或库的在线官方文档获取上下文,无法使用本地类似 JSDoc 的文档信息,适用性有限。
  4. @Web:通用注记,将提问发送到搜索引擎,从搜索结果提取上下文供 LLM 使用,功能未完全优化,效果不稳定。
  5. @Folders:通用注记,提供文件目录相关信息,适用于解决路径相关问题。
  6. @Chat:仅在文件内代码生成窗口(通过 CTRL + K 打开)使用,把右侧对话窗口的对话内容作为上下文传递给大模型。
  7. @Definitions:仅在文件内代码生成窗口使用,将光标所在行代码涉及的变量和类型定义作为上下文传递给大模型,类似 @Code 注记功能。
  8. @Git:仅在对话窗口(通过 CTRL + L 和 CTRL + I 打开)使用,把当前 Git 仓库的 commit 历史作为上下文传递给大模型,适用于代码协作时查看历史记录或确认责任。
  9. @Codebase:仅在对话窗口使用,用于从代码仓找到所需文件的上下文,类似 CodebaseFilter,需设置过滤条件和参数,日常开发实用性较低。

无限邮箱

  1. 进入 官网 ,注销账号
  2. 退出cursor软件
  3. 如果是window电脑,进入控制后台
    [图片]
  4. 执行清除缓存操作

irm https://aizaozao.com/accelerate.php/https://raw.githubusercontent.com/yuaotian/go-cursor-help/refs/heads/master/scripts/run/cursor_win_id_modifier.ps1 | iex

  1. 重新登陆即可
### 设置SQL游标的规则或属性 在PL/SQL环境中,定义和管理游标时有多种方式来设置其行为。对于显式游标,可以通过特定的关键字和参数控制游标的特性。 #### 使用 `FOR UPDATE` 子句锁定行 为了确保数据的一致性和防止并发修改问题,在声明游标时可以附加 `FOR UPDATE` 子句。这会使得从该游标获取的数据行被加锁,直到事务结束为止。其他会话在此期间无法对该些行执行更新、删除或其他形式的锁定读取操作[^3]。 ```sql DECLARE CURSOR emp_cursor IS SELECT employee_id, first_name, last_name FROM employees FOR UPDATE; BEGIN -- 游标逻辑... END; ``` #### 指定列用于锁定 (`OF`) 如果只需要锁定某些特定字段而非整行,则可以在 `FOR UPDATE` 后面加上 `OF column_list` 来指定受影响的具体列名列表。这种方式有助于减少不必要的资源占用并提高性能。 ```sql DECLARE CURSOR salary_update_cur IS SELECT department_id, salary FROM employees WHERE job_title = 'Manager' FOR UPDATE OF salary; BEGIN -- 更新经理薪水的操作... END; ``` #### 控制等待时间 (`NOWAIT`, `WAIT n`) 默认情况下,当尝试访问已被另一个事务锁定的行时,当前事务会被挂起直至前者的释放。然而,通过添加 `NOWAIT` 或者设定最大等待秒数 `WAIT n` 可改变这种行为模式,从而立即抛出异常通知开发者或者允许一定时间内重试。 - **NOWAIT**: 如果遇到已锁定的目标行则立刻报错而不是阻塞。 ```sql DECLARE CURSOR urgent_data_cur IS SELECT * FROM critical_table FOR UPDATE NOWAIT; BEGIN -- 处理紧急情况下的数据... END; ``` - **WAIT n (n为正整数)**: 设定了超时期限后的处理机制;超过给定时长仍未成功取得所需行上的锁就触发错误提示。 ```sql DECLARE CURSOR patient_wait_cur IS SELECT * FROM large_dataset FOR UPDATE WAIT 5; -- 等待最多五秒钟 BEGIN -- 需要较长时间才能完成的任务... END; ``` #### 利用 `WHERE CURRENT OF` 进行当前位置更新/删除 配合使用 `FETCH ... INTO` 和 `UPDATE|DELETE ... WHERE CURRENT OF cursorname` 结构能够实现基于最新检索到的结果集来进行精确位置处的数据变更动作。此功能特别适用于批量维护作业中逐条记录地调整信息而不必担心遗漏任何一条符合条件的对象实例。 ```sql -- 假设有一个已经打开并且定位到了某一行的游标 named_cur UPDATE employees SET salary = salary * 1.05 WHERE CURRENT OF named_cur; -- 类似地也可以做 DELETE ... DELETE FROM employees WHERE CURRENT OF named_cur; ``` 以上就是关于如何配置SQL游标的几个重要方面介绍,涵盖了基本概念以及实际应用中的技巧示例。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

tommyrunner

你的支持,就是我的动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值