Subpage under development, new version coming soon!
Subject: Programação
é.. hehehehe
é pq ultimamente eu to postando aqui e ninguém responde
tem uns exemplos aqui que eu não entendi algumas coisas
a. create procedure ContaUmCliente
b. @nomeBusca varchar(50)
c. as
d. select count(Cli_nom)from Tb_Cliente
e. where cli_nom like '%' + @nomeBusca + '%'
nessa linha "e" apareceu esse like que eu nunca vi, pra que serve ele?
create trigger AlteracaoItemNota
on ItemNotaFiscal for update
as
if update(Quantidade) or update(CodProduto)
begin
update NotaFiscal
set ValorTotal = ValorTotal +
(select p.Preço * (i.Quantidade - d.Quantidade)
from Produto p inner join inserted i
on p.CodProduto = i.CodProduto inner join deleted d
on i.CodProduto = d.CodProduto and i.NumeroNota = d.NumeroNota)
end
e esse inner join faz oq?
é pq ultimamente eu to postando aqui e ninguém responde
tem uns exemplos aqui que eu não entendi algumas coisas
a. create procedure ContaUmCliente
b. @nomeBusca varchar(50)
c. as
d. select count(Cli_nom)from Tb_Cliente
e. where cli_nom like '%' + @nomeBusca + '%'
nessa linha "e" apareceu esse like que eu nunca vi, pra que serve ele?
create trigger AlteracaoItemNota
on ItemNotaFiscal for update
as
if update(Quantidade) or update(CodProduto)
begin
update NotaFiscal
set ValorTotal = ValorTotal +
(select p.Preço * (i.Quantidade - d.Quantidade)
from Produto p inner join inserted i
on p.CodProduto = i.CodProduto inner join deleted d
on i.CodProduto = d.CodProduto and i.NumeroNota = d.NumeroNota)
end
e esse inner join faz oq?
hum... seu problema então é com a linguagem SQL, e nao com um programa em si, que são os SGBDs, como o SQL Server, MySql, Oracle, Postgree.
eu até explicaria aqui pra vc o que faz cada coisa, mas o que eu acho mais fácil pra vc mesmo é ir nesse site aqui W3schools (em inglês) e tirar as suas dúvidas todas, pois tem tudo lá e é muito mais didático que eu explicando aqui pra vc. ehehehe
se esse site ai não tirar suas dúvidas volta pra cá q a gente da um jeito!! =D
eu até explicaria aqui pra vc o que faz cada coisa, mas o que eu acho mais fácil pra vc mesmo é ir nesse site aqui W3schools (em inglês) e tirar as suas dúvidas todas, pois tem tudo lá e é muito mais didático que eu explicando aqui pra vc. ehehehe
se esse site ai não tirar suas dúvidas volta pra cá q a gente da um jeito!! =D
¬¬
então trata de melhorar isso rapa, senão f**** pra vc nessa área. hehehe
Like é pra comparação de strings. No seu exemplo o vc ta tentando buscar na coluna cli_nom todas as ocorrências do valor do parâmetro @nomeBusca.
e o inner join é pra juntar tabelas, assim como o join. Vc junta tabelas que tem uma coluna em comum, por exemplo uma que tem uma chave estrangeira para o código de outra tabela.
clareou um pouco ai? :P
então trata de melhorar isso rapa, senão f**** pra vc nessa área. hehehe
Like é pra comparação de strings. No seu exemplo o vc ta tentando buscar na coluna cli_nom todas as ocorrências do valor do parâmetro @nomeBusca.
e o inner join é pra juntar tabelas, assim como o join. Vc junta tabelas que tem uma coluna em comum, por exemplo uma que tem uma chave estrangeira para o código de outra tabela.
clareou um pouco ai? :P
Desnecessário dizer, que na área de informática, não saber Inglês, é estar isolado do resto do mundo.
Imprescindível !
E para complementar sua resposta, Birro :
em relação ao like, além do que o Birro já disse, ou seja, buscar por uma string dentro de um campo do BD, os sinais de % indicam "qualquer coisa antes" ou "qualquer coisa depois" da string que se deseja buscar :
campo like 'string%' significa que o campo deve começar com a string procurada;
campo like '%string' significa que o campo deve terminar com a string procurada;
campo like '%string%' significa que a string pode estar contida em qualquer posição no campo.
Queries com like devem ser evitadas a todo custo, pois sempre haverá full table scan, ou seja, a tabela será sempre lida do começo ao fim, separando todas as ocorrências, mesmo que o campo tenha um index (índice).
P.ex. Se alguém da Receita Federal fizer uma query :
Select * from CPF where cpf_id like '045%' (todos os CPF que começam com 045), toda a tabela CPF será lida, ou seja, cerca de 90 milhões de registros !
Por outro lado
select * from CPF where left(cpf_id,3) = 045
fará a mesma pesquisa, porém o RDBMS usará o index para realizar a pesquisa.
No meu trabalho, temos uma tabela de auditoria com cerca de 40 milhões de linhas e as consultas são sempre feitas com like.
Fiz um teste usando apenas 10% desta tabela, ou seja, 4 milhões de linhas :
query usando like devolve respostas em 6 a 8 minutos
A mesma pesquisa feita usando grep em uma arquivo tipo texto (obtido de um select * from direcionado para um arquivo de saída), devolve respostas em 10 a 15 segundo, em média !
O grep tem uns 100k bytes de tamanho, tem custo zero e ainda permite usar expressões regulares estendidas !
O RDBMS (um Oracle) tem algumas centenas de megabytes de tamanho, custa alguns milhares de dólares e somente versões mais atuais permitem o uso de expressões regulares estendidas no like.
Diga-se de passagem, implementado após o PostgreSQL implementá-lo !
Outra coisa que deve ter muita atenção são os joins. São recursos extremamente poderosos, tanto quanto as reações nucleares, podem ser muito úteis ou totalmente destrutíveis ! ;)
Imprescindível !
E para complementar sua resposta, Birro :
em relação ao like, além do que o Birro já disse, ou seja, buscar por uma string dentro de um campo do BD, os sinais de % indicam "qualquer coisa antes" ou "qualquer coisa depois" da string que se deseja buscar :
campo like 'string%' significa que o campo deve começar com a string procurada;
campo like '%string' significa que o campo deve terminar com a string procurada;
campo like '%string%' significa que a string pode estar contida em qualquer posição no campo.
Queries com like devem ser evitadas a todo custo, pois sempre haverá full table scan, ou seja, a tabela será sempre lida do começo ao fim, separando todas as ocorrências, mesmo que o campo tenha um index (índice).
P.ex. Se alguém da Receita Federal fizer uma query :
Select * from CPF where cpf_id like '045%' (todos os CPF que começam com 045), toda a tabela CPF será lida, ou seja, cerca de 90 milhões de registros !
Por outro lado
select * from CPF where left(cpf_id,3) = 045
fará a mesma pesquisa, porém o RDBMS usará o index para realizar a pesquisa.
No meu trabalho, temos uma tabela de auditoria com cerca de 40 milhões de linhas e as consultas são sempre feitas com like.
Fiz um teste usando apenas 10% desta tabela, ou seja, 4 milhões de linhas :
query usando like devolve respostas em 6 a 8 minutos
A mesma pesquisa feita usando grep em uma arquivo tipo texto (obtido de um select * from direcionado para um arquivo de saída), devolve respostas em 10 a 15 segundo, em média !
O grep tem uns 100k bytes de tamanho, tem custo zero e ainda permite usar expressões regulares estendidas !
O RDBMS (um Oracle) tem algumas centenas de megabytes de tamanho, custa alguns milhares de dólares e somente versões mais atuais permitem o uso de expressões regulares estendidas no like.
Diga-se de passagem, implementado após o PostgreSQL implementá-lo !
Outra coisa que deve ter muita atenção são os joins. São recursos extremamente poderosos, tanto quanto as reações nucleares, podem ser muito úteis ou totalmente destrutíveis ! ;)
hmmm vlw vlw
mas tipo, eu sou novo ainda cara, to começando agora, só tenho 19 anos, se acalme que jaja eu faço um curso de inglês :P
mas tipo, eu sou novo ainda cara, to começando agora, só tenho 19 anos, se acalme que jaja eu faço um curso de inglês :P
Nem precisa. Se você souber aquele basicão mais algum vocabulário você consegue pegar esses livros técnicos e ler.
Eu aprendi inglês assim, estudando outras coisas.
Eu aprendi inglês assim, estudando outras coisas.
mas eu vou fazer de qualquer jeito
2014 quero pegar as gringas
por enquanto soh sei falar "kiss me" "let's due"
2014 quero pegar as gringas
por enquanto soh sei falar "kiss me" "let's due"
Mais do que ser simples, linguagem técnica incorpora muitos termos, radicais e afixos do latim e do grego. Então as palavras, se não são iguais, são semelhantes entre os idiomas.
to preocupado com essa AV3 de Banco de Dados
seguinte, a AV2 foi esse trabalho:
Como fazer o projeto de BD ?
1. Apresentar um contexto para a criação de um banco de dados (1 ponto)
2. Calcular a estimativa de ocupação deste banco de dados (2 pontos)
3. Modelar um Banco de dados em qualquer SGBD com as restrições abaixo (2 pontos):
a. Mínimo de 5 tabelas
b. Cada tabela deve conter no mínimo 3 atributos além da chave primária
c. Gerar o Dicionário de Dados do BD
4. Scripts (5 pontos)
a. Alteração do BD para incluir (4 pontos)
i. Dois novos tipos de dados em qualquer tabela do BD
ii. Duas regras em qualquer tabela do BD
iii. Dois valores default para qualquer atributo do BD
iv. Duas triggers em qualquer tabela do BD.
1. Emissão de mensagem de erro.
2. De atualização
v. Uma Stored Procedure com parâmetros
vi. Criar pelo menos 3 visões conforme o contexto apresentado
vii. Criar dois usuários para o banco de dados
viii. Dar acesso aos dois usuários
b. Consultas (1 ponto)
i. Relatório para consultas com no mínimo 3 junções
ii. Relatório com sub-consulta
iii. Relatório com inner-join
iv. Relatório com agrupamento, utilizando a cláusula Having
5. Data da entrega: No dia da AV2 (IMPRESSO)
6. Nota: 10 pontos
a professoria disse que ia fazer a AV3 baseado nesse trabalho, principalmente na parte das implementações, disse que ia colocar um contexto e apartir desse contexto fazer as questões...
eu num sei oq estudar, eu queria estudar implementando em um BD, mas eu não tenho, é tudo pago, a minha facu fornece mas vai demorar 1 mês pra chegar... alguem me dá uma dica em como estudar isso?!
seguinte, a AV2 foi esse trabalho:
Como fazer o projeto de BD ?
1. Apresentar um contexto para a criação de um banco de dados (1 ponto)
2. Calcular a estimativa de ocupação deste banco de dados (2 pontos)
3. Modelar um Banco de dados em qualquer SGBD com as restrições abaixo (2 pontos):
a. Mínimo de 5 tabelas
b. Cada tabela deve conter no mínimo 3 atributos além da chave primária
c. Gerar o Dicionário de Dados do BD
4. Scripts (5 pontos)
a. Alteração do BD para incluir (4 pontos)
i. Dois novos tipos de dados em qualquer tabela do BD
ii. Duas regras em qualquer tabela do BD
iii. Dois valores default para qualquer atributo do BD
iv. Duas triggers em qualquer tabela do BD.
1. Emissão de mensagem de erro.
2. De atualização
v. Uma Stored Procedure com parâmetros
vi. Criar pelo menos 3 visões conforme o contexto apresentado
vii. Criar dois usuários para o banco de dados
viii. Dar acesso aos dois usuários
b. Consultas (1 ponto)
i. Relatório para consultas com no mínimo 3 junções
ii. Relatório com sub-consulta
iii. Relatório com inner-join
iv. Relatório com agrupamento, utilizando a cláusula Having
5. Data da entrega: No dia da AV2 (IMPRESSO)
6. Nota: 10 pontos
a professoria disse que ia fazer a AV3 baseado nesse trabalho, principalmente na parte das implementações, disse que ia colocar um contexto e apartir desse contexto fazer as questões...
eu num sei oq estudar, eu queria estudar implementando em um BD, mas eu não tenho, é tudo pago, a minha facu fornece mas vai demorar 1 mês pra chegar... alguem me dá uma dica em como estudar isso?!
ahahahhaeu achei um video aula e chorei de rir com a voz do cara, mas é bem interessante, ajudou pra caramba
como assim é tudo pago? o MySql e Postgree sao gratuitos, alem do SQL Server tem uma versão free tb..
é só baixar, pegar as apostilas e video aulas q tem ai e meter as caras... tem misterios nao. =D
é só baixar, pegar as apostilas e video aulas q tem ai e meter as caras... tem misterios nao. =D
eu nao consegui achar esses Free não..
mas eu jah vi umas 10 video-aulas ajudou bastante
mas eu jah vi umas 10 video-aulas ajudou bastante