Olá a todos. Neste post irei falar um pouco sobre essa ferramenta que, ao meu ver, veio para substituir o SQL*Plus a médio/longo prazo. Trata-se do SQLcl, ou “SQL Command Line”

 

1)INTRODUÇÃO

É uma evolução do SQL*Plus. É uma interface de linha de comando para bases de dados Oracle com funcionalidades extras e facilidades em relação ao SQL*Plus.

Ele pode ser instalado separadamente do SQL*Plus

Adiciona algumas funcionalidades não existentes no SQL*Plus, porém, todos os comandos do SQL*Plus funcionam nessa ferramenta:

* Name/Object Completion (através do TAB)
* História de execução de SQLs
* Formatação de result sets/output através do comando “set sqlformat”
* Permite a criação de aliases
* Permite duplicar tabelas com o comando “ctas”
* Permite gerar DDLs através do comando “ddl”
* Obter informações detalhadas através do comando “info+”

Requer o Java 7 (JRE)

É chamado através do comando “sql”

Para instalar, basta descompactar e dar permissões de execução (chmod +x) ao binário “sql”.

OBS1: Download: http://www.oracle.com/technetwork/developer-tools/sql-developer/downloads/index.html

 

2)EXEMPLOS

Para ilustrar melhor as funcionalidades da ferramenta, vamos trabalhar com alguns exemplos simples, mas que já mostram seu potêncial.

 

EX001 – SE CONECTANDO A UMA BASE DE DADOS

[et_pb_dmb_code_snippet _builder_version=”4.0.6″ code=”Li9zcWwgdXNlcm5hbWUvc2VuaGFAdG5zCi4vc3FsIHN5cy9zZW5oYSBhcyBzeXNkYmE=” hover_enabled=”0″]Li9zcWwgdXNlcm5hbWUvc2VuaGFAdG5zCi4vc3FsIHN5cy9zZW5oYSBhcyBzeXNkYmE=[/et_pb_dmb_code_snippet]

EX002 – MOSTRANDO TODAS AS CONFIGURAÇÕES DA FERRAMENTA

[et_pb_dmb_code_snippet _builder_version=”4.0.6″ code=”U1FMPiBzaG93IGFsbA==” hover_enabled=”0″]U1FMPiBzaG93IGFsbA==[/et_pb_dmb_code_snippet]

EX003 – TRABALHANDO COM HISTÓRICO DE COMANDOS EXECUTADOS

[et_pb_dmb_code_snippet _builder_version=”4.0.6″ code=”IyMjIHNpbnRheGUKU1FMPiBoaXN0b3J5IDxmdWxsIHwgdXNhZ2UgfCB0aW1lPg==” hover_enabled=”0″]IyMjIHNpbnRheGUKU1FMPiBoaXN0b3J5IDxmdWxsIHwgdXNhZ2UgfCB0aW1lPg==[/et_pb_dmb_code_snippet]

OBS1: “usage” mostra quantas vezes um determinado SQL foi executado

OBS2: “time” mostra o tempo de execução do comando SQL

[et_pb_dmb_code_snippet _builder_version=”4.0.6″ code=”IyMjIGxpbXBhbmRvIG8gaGlzdG9yaWNvClNRTD4gaGlzdG9yeSBjbGVhcg==” hover_enabled=”0″]IyMjIGxpbXBhbmRvIG8gaGlzdG9yaWNvClNRTD4gaGlzdG9yeSBjbGVhcg==[/et_pb_dmb_code_snippet]

OBS1: É possível digitar “edit” para editar o último comando do buffer.

 

EX004 – TRABALHANDO COM ALIASES

[et_pb_dmb_code_snippet _builder_version=”4.0.6″ code=”IyMjIGxpc3RhbmRvIG9zIGFsaWFzZXMgasOhIGNyaWFkb3MuIGrDoSBleGlzdGVtIGFsZ3VucyBhbGlhc2VzIHByw6ktY3JpYWRvcwpTUUw+IGFsaWFzCgojIyMgZXhpYmluZG8gZGV0YWxoZXMgZG8gYWxpYXMKU1FMPiBhbGlhcyBsaXN0IDxub21lX2FsaWFzPgoKIyMjIGNyaWFuZG8gdW0gYWxpYXMKU1FMPiBhbGlhcyBjb21hbmRvPWNsYXVzdWxhX3NxbApTUUw+IGFsaWFzIGRic2l6ZW1icz1zZWxlY3Qgc3VtKGJ5dGVzKS8xMDI0LzEwMjQgZnJvbSBkYmFfZGF0YV9maWxlczs=” hover_enabled=”0″]IyMjIGxpc3RhbmRvIG9zIGFsaWFzZXMgasOhIGNyaWFkb3MuIGrDoSBleGlzdGVtIGFsZ3VucyBhbGlhc2VzIHByw6ktY3JpYWRvcwpTUUw+IGFsaWFzCgojIyMgZXhpYmluZG8gZGV0YWxoZXMgZG8gYWxpYXMKU1FMPiBhbGlhcyBsaXN0IDxub21lX2FsaWFzPgoKIyMjIGNyaWFuZG8gdW0gYWxpYXMKU1FMPiBhbGlhcyBjb21hbmRvPWNsYXVzdWxhX3NxbApTUUw+IGFsaWFzIGRic2l6ZW1icz1zZWxlY3Qgc3VtKGJ5dGVzKS8xMDI0LzEwMjQgZnJvbSBkYmFfZGF0YV9maWxlczs=[/et_pb_dmb_code_snippet]

EX005 – ALTERANDO A FORMATAÇÃO DO OUTPUT

[et_pb_dmb_code_snippet _builder_version=”4.0.6″ code=”IyMjIHNpbnRheGUKU1FMPiBzZXQgc3FsZm9ybWF0IGRlZmF1bHR8YW5zaWNvbnNvbGV8aHRtbHxjc3Z8eG1s” hover_enabled=”0″]IyMjIHNpbnRheGUKU1FMPiBzZXQgc3FsZm9ybWF0IGRlZmF1bHR8YW5zaWNvbnNvbGV8aHRtbHxjc3Z8eG1s[/et_pb_dmb_code_snippet]

OBS1: “ansiconsole” é útil para exibir os textos com seus cabeçalhos e espaçamentos entre as colunas

OBS2: Para voltar a formatação original, basta usar o parâmetro “default”

[et_pb_dmb_code_snippet _builder_version=”4.0.6″ code=”IyMjIGNvbSBvIOKAnHNxbGZvcm1hdOKAnSDDqSBwb3Nzw612ZWwgcGVnYXIgdW0gcmVzdWx0ZXNldCBkZSB1bWEgcXVlcnkgZSBzYWx2YXIgZW0gdW0gZm9ybWF0byDDunRpbCwgY29tbyBjc3YuIEV4OgpTUUw+IHNldCBzcWxmb3JtYXQgY3N2ClNRTD4gc3Bvb2wgb3V0cHV0LnZlbmRhcy5zcWwKU1FMPiBzZWxlY3QgKiBmcm9tIHRhYl92ZW5kYXM7ClNRTD4gc3Bvb2wgb2Zm” hover_enabled=”0″]IyMjIGNvbSBvIOKAnHNxbGZvcm1hdOKAnSDDqSBwb3Nzw612ZWwgcGVnYXIgdW0gcmVzdWx0ZXNldCBkZSB1bWEgcXVlcnkgZSBzYWx2YXIgZW0gdW0gZm9ybWF0byDDunRpbCwgY29tbyBjc3YuIEV4OgpTUUw+IHNldCBzcWxmb3JtYXQgY3N2ClNRTD4gc3Bvb2wgb3V0cHV0LnZlbmRhcy5zcWwKU1FMPiBzZWxlY3QgKiBmcm9tIHRhYl92ZW5kYXM7ClNRTD4gc3Bvb2wgb2Zm[/et_pb_dmb_code_snippet]

EX006 – OBTENDO INFORMAÇÕES SOBRE UMA TABELA. VEM A SER UMA “EVOLUÇÃO” DO DESC. O “+” EXIBE AINDA MAIS DETALHES SOBRE A TABELA.

[et_pb_dmb_code_snippet _builder_version=”4.0.6″ code=”U1FMPiBpbmZvIHNjaGVtYS50YWJlbGEKU1FMPiBpbmZvKyBzY2hlbWEudGFiZWxh” hover_enabled=”0″]U1FMPiBpbmZvIHNjaGVtYS50YWJlbGEKU1FMPiBpbmZvKyBzY2hlbWEudGFiZWxh[/et_pb_dmb_code_snippet]

EX007 – GERANDO O DDL DE UM OBJETO

[et_pb_dmb_code_snippet _builder_version=”4.0.6″ code=”IyMjIHNpbnRheGUKU1FMPiBEREwgc2NoZW1hLm9iamV0bwoKIyMjIGdlcmFuZG8gbyBkZGwgZSBzYWx2YW5kbyBlbSB1bSBhcnF1aXZvClNRTD4gRERMIHNjaGVtYS5vYmpldG8gYXJxdWl2by5zcWw=” hover_enabled=”0″]IyMjIHNpbnRheGUKU1FMPiBEREwgc2NoZW1hLm9iamV0bwoKIyMjIGdlcmFuZG8gbyBkZGwgZSBzYWx2YW5kbyBlbSB1bSBhcnF1aXZvClNRTD4gRERMIHNjaGVtYS5vYmpldG8gYXJxdWl2by5zcWw=[/et_pb_dmb_code_snippet]

EX008 – CRIANDO UMA TABELA, A PARTIR DE OUTRA TABELA (CTAS):

[et_pb_dmb_code_snippet _builder_version=”4.0.6″ code=”U1FMPiBjdGFzIHNjaGVtYS50YWJlbGFfb3JpZ2VtIHNjaGVtYS5ub3ZhX3RhYmVsYTs=” hover_enabled=”0″]U1FMPiBjdGFzIHNjaGVtYS50YWJlbGFfb3JpZ2VtIHNjaGVtYS5ub3ZhX3RhYmVsYTs=[/et_pb_dmb_code_snippet]

EX009 – EXECUTANDO SCRIPTS .SQL

[et_pb_dmb_code_snippet _builder_version=”4.0.6″ code=”c3FsIHVzZXIvc2VuaGEgQHNjcmlwdC5zcWw=” hover_enabled=”0″]c3FsIHVzZXIvc2VuaGEgQHNjcmlwdC5zcWw=[/et_pb_dmb_code_snippet]

EX010 – EXIBINDO INFORMAÇÕES SOBRE UM ERRO ORA-XXX

[et_pb_dmb_code_snippet _builder_version=”4.0.6″ code=”U1FMPiBvZXJyIE9SQS02MDA=” hover_enabled=”0″]U1FMPiBvZXJyIE9SQS02MDA=[/et_pb_dmb_code_snippet]

EXTRAS – EXIBINDO O SÍMBOLO DO SQL DEVELOPER E OS CRIADORES DA FERRAMENTA SQLCL

[et_pb_dmb_code_snippet _builder_version=”4.0.6″ code=”U1FMPiBzaG93IHNxbGRldgoKU1FMPiBzaG93IHNxbGRldjI=” hover_enabled=”0″]U1FMPiBzaG93IHNxbGRldgoKU1FMPiBzaG93IHNxbGRldjI=[/et_pb_dmb_code_snippet]

Eu já estou usando essa ferramenta em alguns projetos e até o momento, gostando bastante das facilidades que ela fornece em relação ao tradicional SQL*Plus. Creio que em breve, ela venha a substituir este.

Com isso encerro esse pequeno post. Até a próxima.