database-operations
Escrever consultas de banco de dados SQLAlchemy eficientes
Consultas de banco de dados escritas com for-loops são lentas e criam problemas de manutenção. Esta skill fornece diretrizes para usar operações em lote do SQLAlchemy e padrões de repositório para escrever código de banco de dados rápido e de fácil manutenção.
下載技能 ZIP
在 Claude 中上傳
前往 設定 → 功能 → 技能 → 上傳技能
開啟並開始使用
測試它
正在使用「database-operations」。 Inserir em lote 1000 registros de usuário de forma eficiente
預期結果:
- Use session.bulk_insert_mappings() para inserções em lote eficientes
- Passe uma lista de dicionários com atributos do modelo
- Exemplo: session.bulk_insert_mappings(User, user_list)
- Isso executa uma única instrução INSERT em vez de 1000 consultas separadas
正在使用「database-operations」。 Criar um repositório para acesso a dados de usuário
預期結果:
- Defina uma classe UserRepository com injeção de Session
- Implemente métodos find_by_id, find_by_email e find_active
- Use type hints para melhor clareza e manutenção do código
- Mantenha a lógica de banco de dados abstraída da camada de negócio
正在使用「database-operations」。 Corrigir consulta lenta com problema N+1
預期結果:
- Substitua a busca de dados relacionados baseada em loop por joinedload()
- Configure a estratégia de carregamento de relacionamento nas opções de consulta
- Uma única consulta recupera todos os objetos relacionados de forma eficiente
- Reduz centenas de consultas para apenas uma ou duas idas e voltas
安全審計
安全Pure prompt-based skill containing only SQLAlchemy guidelines. No executable code, no file access, no network calls, no command execution. Static findings are false positives from pattern matching on words like 'algorithm' in non-security contexts. This skill provides only instructional text about database query optimization.
風險因素
🌐 網路存取 (1)
📁 檔案系統存取 (1)
品質評分
你能建構什麼
Otimizar código de banco de dados existente
Refatorar operações lentas de banco de dados com for-loop para usar métodos em lote do SQLAlchemy e obter melhor desempenho.
Projetar camada de dados de fácil manutenção
Estruturar operações de banco de dados em classes de repositório seguindo padrões estabelecidos.
Escrever operações em lote eficientes
Usar SQL joins e métodos em lote ao processar grandes conjuntos de dados com SQLAlchemy.
試試這些提示
Use SQLAlchemy bulk insert to add multiple user records to the database. Show the bulk_insert_mappings method.
Write a SQLAlchemy bulk update operation to change status for all pending orders. Include the Core update statement pattern.
Create a UserRepository class with methods for finding users by email, getting active users, and updating last login.
Show how to use SQLAlchemy joinedload or selectinload to fetch users with their orders in a single query instead of separate queries.
最佳實務
- Sempre prefira métodos em lote do SQLAlchemy em vez de for-loops do Python para operações de banco de dados
- Use SQL joins para buscar dados relacionados em uma única consulta em vez de múltiplas consultas
- Organize operações de banco de dados em classes de repositório para facilitar manutenção e testes
避免
- Iterar através de resultados de consulta com for-loops para inserir ou atualizar registros
- Fazer chamadas separadas ao banco de dados em loops para buscar objetos relacionados (problema N+1)
- Colocar lógica de banco de dados diretamente em manipuladores de rota ou controladores sem abstração
常見問題
Quais versões do SQLAlchemy são suportadas?
Quais são os benefícios de desempenho?
Isso pode ser integrado com FastAPI ou Flask?
Meus dados estão seguros com esta skill?
Por que evitar for-loops para operações de banco de dados?
Como isso se compara ao SQL puro?
開發者詳情
授權
MIT
儲存庫
https://github.com/Crossbill-Highlights/crossbill-web/tree/main/.claude/skills/database-operations引用
main
檔案結構
📄 SKILL.md