O que é OData?
É uma especificação para consumir recursos de banco de dados em servidores que implementam RESTful. A solicitação de operação no banco de dados é enviada para o servidor em uma URL e retorna o resultado da consulta do banco de dados.
Através dos métodos de comunicação com o servidor RESTful é estabelecido o tipo de operação a ser executado:
- GET – Solicita que retorne um conjunto de dados do banco de dados;
- POST – Envia um INSERT para o banco de dados;
- PUT – Envia um UDPATE para o banco de dados – no OData é necessário enviar todas as colunas;
- PATCH – Envia um UPDATE parcial – não precisa mandar todas as colunas;
- DELETE – apaga um registro no banco de dados;
Exemplo de GET:
- http://servidor:8080/OData/OData.svc/produtos(1) – Executa uma busca nos registro de produtos e retornar o produto 1;
- http://servidor:8080/OData/OData.svc/produtos(1)/clientes – retorna os clientes que compraram o produto;
- http://servidor:8080/OData/OData.svc/produtos(1)/clientes(estado=’SP’) – retorna os clientes que compraram o produto 1 e que estão no estado SP;
- http://servidor:8080/OData/OData.svc/produtos?$top=10 – retorna os 10 primeiro itens da tabela/coleção produtos;
- http://servidor:8080/OData/OData.svc/produtos?$top=10&$skip=20 – salta os 20 primeiros registros e retornar se próximos 10 produtos;
- http://servidor:8080/OData/OData.svc/produtos?$select=codigo,nome,unidade – retorna as colunas codigo,nome,undiade;
- http://servidor:8080/OData/OData.svc/produtos?$filter=unidade eq ‘KG’ -> retorna os produto que a unidade seja igual a KG;
Notações de filtro:
- eq – equal =
- lt – less than <
- le – less equal <=
- ne – not equal <>
- gt – great than >
- ge – great equal >=
Ver especificação em: OData.org
Olá.. Obrigado pela iniciativa;
É possível você disponibilizar um Demo Simples usando o protocolo OData?
Estou no aguardo!