Ir para conteúdo
Fórum Script Brasil

jothaz

Membros
  • Total de itens

    430
  • Registro em

  • Última visita

Tudo que jothaz postou

  1. Sql Server: select top 2 * from tabela Sql Server: è a mesma coisa Sql Server: select top 2 * from tabela order by desc
  2. jothaz

    Dúvidas Função Max

    Tenta isso: declare @tab table (pedvendadata datetime, pedvendanum int, entnome varchar(15)) insert into @tab (pedvendadata , pedvendanum , entnome ) values ('2008/07/12',8874,'Maria') insert into @tab (pedvendadata , pedvendanum , entnome ) values ('2008/07/12',785,'Maria') insert into @tab (pedvendadata , pedvendanum , entnome ) values ('2008/07/12',88787,'Diana') insert into @tab (pedvendadata , pedvendanum , entnome ) values ('2008/07/20',777,'Dora') insert into @tab (pedvendadata , pedvendanum , entnome ) values ('2008/07/30',1234,'Thais') insert into @tab (pedvendadata , pedvendanum , entnome ) values ('2008/07/30',12345,'Thais') insert into @tab (pedvendadata , pedvendanum , entnome ) values ('2008/07/30',8,'Cida') select convert(char(10),pedvendadata,103), entnome , max(pedvendanum) from @tab group by pedvendadata, entnome order by pedvendadata, entnome
  3. jothaz

    Excel.application

    Pode ser problema de permissão: Mas para evitar chutes post o erro retornado ai.
  4. Se entendi bem o problema é que localmente você não consegue acessar o BD no servidor!? Cara cria uma fonte de dados ODBC em configurações->ferramentas administrativas->fontes de dados odbc. Ai você acessa normalmente. Acho que é isso.
  5. Fiz um funçao asp que simula o printf do php: public function sprintf(textoaux, args()) '-- Faz a funcionalidade da função sprintf do C++ e PHP ' Substitui os caracteres curinga %s pelos parâmetros passados como um vetor ' Como em ASP não existe o qualificador ParamArray então é necessário chamar ' o método array para converter os comandos ' Ex: " Olá mundo feliz!" = sprintf("Olá %s %s!",Array("mundo","feliz")) ' Dim posCuringa Dim prefixo Dim sufixo Dim iPos Dim texto texto = textoaux if not IsArray(args) then Err.Raise 1,"sprintf","Parâmetros não passados" 'Response.Write "<BR> texto = " & texto & "" 'Response.write "<BR>" & count(texto) & " <> " & UBound(args) + 1 if count(texto) <> UBound(args) + 1 then Err.Raise 2, "sprintf", "Número de parâmetros incorreto" iPos = 0 While InStr(1,texto,"%s") posCuringa = InStr(1,texto,"%s") prefixo = mid(texto,1,posCuringa-1) sufixo = mid(texto,posCuringa + 2) texto = prefixo & args(iPos) & sufixo ipos = ipos + 1 Wend sprintf = texto end function
  6. jothaz

    Migrar banco

    Não tenho SQL Server aqui no trampo só Oracle, PostgreSQL e DB2. Mas onde você esta procurando o DTS? No SQL 2000: você entra no "Enterprise Manager"seleciona o banco da dadosclica com botão direito do mouse escolhe all task (todas tarefas)importDai é só seguir os passo do tuto no link. Lembre-se você deve ter um fonte ODBC MySQL criada.
  7. jothaz

    Migrar banco

    No SQL Server temos a ferramenta DTS que é justamente para importar/exporta dados em formatos variados. No google você encontrará várias ferramentas (grátis ou pagos) fia sua escolha: Un link com um exemplo é: http://www.microsoft.com/technet/prodtechn...ploy/mysql.mspx Esta em inglês mas mostra o processo passo a passo. Pelo que pude ver utiliza um fonte de dados ODBC!
  8. Não entendi bem mas tente com padding-top: 0px; padding-bottom: 0px; padding-left: 0px; padding-rigth: 0px;
  9. Então você já programa em PHP? Ou prefere o PHP só por preferir? Na web existem milhares de exemplos de utilização do PHP com BD. Baixe uma que você (já programa em PHP) ache mais simples e post suas dúvidas. Caso necessário pode-se até mover esta post para a área de PHP. Agora você quer um exemplo ou que o código pronto? Se for exemplos a web esta cheia.
  10. É isso ai em html puro só mesmo conteúdo estatico. Para conectar ao BD é preciso de ustilizar outra linguagem. você têm experiência em alguam outra linguagem que não seja html?
  11. É possível um criar uma funcionalidade para atender vossa demanda. Porém seria produtivo e facilitaria a ajuda caso pudesse fornecer mais informaçõas. Você tem algum conhecimento em programação: html, asp, php, Java ou outro? Você tem algum conhecimento em banco de dados: Access, mysql, SQL Server ou outro? Você já possui um provedor para hospedar a página. Se sim qual tipa de servidor web suportado por ele: php, asp, Java ou outro? Você tem alguma preferência para o banco de dados? Você quer um exemplo para tentar desenvolver a aplicação sozinha ou quer a aplicação pronta e completa?
  12. O fragmento de código postado redireciona para uma página asp passando parametro^. Response.redirect("admin_main.asp?addpass="&addpass&"") Onde: Response.redirect - comando asp para redirecionar/chamar páginas no asp admin_main.asp? - página asp a ser carregada (note a ? define que depois virá lista de parâmetro do querystring addpass="&addpass&""- parâmetros querystring, caso mais de um serpará-los por &
  13. Qual banco de dados você esta uilizando? Veja se o exemplo abaixo lhe ajuda: declare @PATIO table (PLACA varchar(10), CARRETA varchar(10), REBOQUE varchar(10), HORASAI char(5)) insert into @PATIO (PLACA , CARRETA , REBOQUE , HORASAI) values ('AAA111','carreta01','reboque01',null) insert into @PATIO (PLACA , CARRETA , REBOQUE , HORASAI) values ('AAA111','carreta01','reboque01',null) insert into @PATIO (PLACA , CARRETA , REBOQUE , HORASAI) values ('AAA111','carreta01','reboque01',null) insert into @PATIO (PLACA , CARRETA , REBOQUE , HORASAI) values ('BBB222','carreta01','reboque88',null) insert into @PATIO (PLACA , CARRETA , REBOQUE , HORASAI) values ('BBB222','carreta77','reboque55',null) insert into @PATIO (PLACA , CARRETA , REBOQUE , HORASAI) values ('BBB222','carreta44','reboque11',null) insert into @PATIO (PLACA , CARRETA , REBOQUE , HORASAI) values ('BBB222','carreta88','reboque02',null) insert into @PATIO (PLACA , CARRETA , REBOQUE , HORASAI) values ('CCC333','carreta01','reboque01',null) insert into @PATIO (PLACA , CARRETA , REBOQUE , HORASAI) values ('DDD444','carreta01','reboque01',null) SELECT PLACA, max(CARRETA), max(REBOQUE), max(HORASAI) FROM @PATIO WHERE HORASAI IS NULL group by placa order by placa
  14. Tenta assim: SELECT c.*, e.descricao as estado, e.uf, c.descricao as cidade FROM cidades c inner join estados e on c.estado_id = e.id WHERE c.id IN ( SELECT cidade_id FROM hoteis ) Coloque o nome do alias para ID (WHERE c.id IN )
  15. jothaz

    Questão de SQL SELECT

    Tenta algo assim: create table #CONTAS (ID_CONTA int, DATA datetime, VALOR int, IDMOTIVO int) insert into #CONTAS (ID_CONTA , DATA, VALOR, IDMOTIVO) values (1, '2007/01/05', 100, 103) insert into #CONTAS (ID_CONTA , DATA, VALOR, IDMOTIVO) values (2, '2007/01/09', 700, 101) insert into #CONTAS (ID_CONTA , DATA, VALOR, IDMOTIVO) values (3, '2007/01/11', 50, 103) insert into #CONTAS (ID_CONTA , DATA, VALOR, IDMOTIVO) values (4, '2007/01/22', 1020, 102) insert into #CONTAS (ID_CONTA , DATA, VALOR, IDMOTIVO) values (5, '2007/01/30', 833, 102) create table #MOTIVO (IDMOTIVO int, Descricao varchar(50)) insert into #MOTIVO (IDMOTIVO ,Descricao) values (101, 'ALUGUEL') insert into #MOTIVO (IDMOTIVO ,Descricao) values (102, 'MATERIAL DE ESCRITORIO') insert into #MOTIVO (IDMOTIVO ,Descricao) values (103, 'MATERIAL DE LIMPEZA') insert into #MOTIVO (IDMOTIVO ,Descricao) values (104, 'ENERGIA') --Produto que gatou mais select top 1 descricao, sum(valor) from #CONTAS C ,#MOTIVO M where c.IDMOTIVO = m.IDMOTIVO group by descricao order by sum(valor) desc --qual foi o menor lançamento durante o mês select top 1 descricao,min(valor) from #CONTAS C ,#MOTIVO M where c.IDMOTIVO = m.IDMOTIVO group by descricao order by min(valor) --c. Qual a média dos lançamentos de materias select sum(valor) / (select count(valor) from #CONTAS ) from #CONTAS --d. qual lançamento não apresenta despesas select m.idmotivo,descricao from #MOTIVO M where not exists (select * from #CONTAS C where c.IDMOTIVO = m.IDMOTIVO) --2. crie um comando de DELETE para os motivos que não apesentam lançamento. delete from #MOTIVO where not exists (select * from #CONTAS C where c.IDMOTIVO = #MOTIVO.IDMOTIVO) select * from #MOTIVO drop table #MOTIVO drop table #CONTAS Agora é só apdaptar para vossa necessidade. Storede procedure, função ou query simples.
  16. Dê um olhada no post: http://scriptbrasil.com.br/forum/index.php?showtopic=120643 Acho que poderá ajudar.
  17. jothaz

    Consulta SQL

    Não entendi bem qual seu problema. Mas uma coisa você não vai conseguir! É criar nome de coluna com números pois o SQL não permite! Segue um código para gerar nome das colunas dinamicamente: create table #tabela1 (codigo int, quantidade int, data datetime) insert into #tabela1 (codigo, quantidade, data) values (12000,6, '11/05/2008') insert into #tabela1 (codigo, quantidade, data) values (900000,6, '11/05/2008') insert into #tabela1 (codigo, quantidade, data) values (11000,4, '11/05/2008') create table #tabela2 (data datetime) declare @codigo int, @aux varchar(50), @quantidade int DECLARE mycursor CURSOR FOR select max(codigo), max(quantidade) from #tabela1 group by codigo order by codigo OPEN mycursor FETCH NEXT FROM mycursor INTO @codigo, @quantidade WHILE @@FETCH_STATUS = 0 BEGIN select @aux = 'c' + convert(varchar(10),@codigo) select @aux = ' alter table #tabela2 add ' + @aux + ' varchar(50) ' exec(@aux) FETCH NEXT FROM mycursor INTO @codigo, @quantidade END CLOSE mycursor DEALLOCATE mycursor GO select * from #tabela2 drop table #tabela1 drop table #tabela2 Seus exemplos estão um pouco confusos (tem codigo 1100 duas vezes o ano data esta 2088). Mas seguindo a logica acima você faz um loop para criar as colunas e depois outro loop para gravar os registros! A data ira repetir?
  18. Sem pensar muito a forma mais simples, porém mais deselegante, seria gerar tabela com as datas e respectivos: ano, senama e dia senana. Dai através de um select com where você recupera a data. Claro para gerar as datas e dar carga na tabela você poderia cria um aplicatico: Java, VB ou mesmo Access.
  19. jothaz

    AND multiplo

    Muito confuso vosso post. Não tendendi bem o que queres, mas sou meio lerdo, então isso acontece. :o Mas tenta troca o AND pelo OR: SELECT * FROM cadastros c LEFT JOIN segmentos s ON s.ds_codigo = c.ds_codigo AND s.ds_codigo_segmento=21 OR s.ds_codigo_segmento=22 OR s.ds_codigo_segmento=23 Outra sugestão é usa IN mas em um SQL dinamico e dar um EXEC.
  20. jothaz

    multiplicar colunas

    Veja se isto lhe ajuda: DECLARE @TAB1 TABLE (ID INT, VR1 INT, VR2 INT) INSERT INTO @TAB1 (ID,VR1,VR2) VALUES (1,2,5) INSERT INTO @TAB1 (ID,VR1,VR2) VALUES (2,10,10) INSERT INTO @TAB1 (ID,VR1,VR2) VALUES (3,50,2) SELECT ID,VR1,VR2, (VR1*VR2) AS 'TOTAL1', (VR1 * .5) AS 'TOTAL2', ((VR2 * 10) + (vr1 * 5)) AS 'TOTAL3' FROM @TAB1 Claro fique de olho nos tipos dos campos. E quiser um precisão maior use DECIMAL ou NUMERIC.
  21. jothaz

    Problema com select

    Acho que o script abaixo pode dar uma luz: DECLARE @EMAILID VARCHAR(200), @DELIMITADOR VARCHAR(2), @AUX VARCHAR(200) --DEFINE QUE VAI SER O DELIMITADOR SET @DELIMITADOR = ',' DECLARE @TAB1 TABLE (ID INT, EMAILID VARCHAR(200)) INSERT INTO @TAB1 (ID,EMAILID) VALUES (1,'100') INSERT INTO @TAB1 (ID,EMAILID) VALUES (2,'101,102,103,104') INSERT INTO @TAB1 (ID,EMAILID) VALUES (3,'105,106') DECLARE @TAB2 TABLE (EMAILID VARCHAR(200), EMAILADDRESS VARCHAR(200)) INSERT INTO @TAB2 (EMAILID,EMAILADDRESS) VALUES (100,'ADDRESS100@EMAIL.COM') INSERT INTO @TAB2 (EMAILID,EMAILADDRESS) VALUES (101,'ADDRESS101@EMAIL.COM') INSERT INTO @TAB2 (EMAILID,EMAILADDRESS) VALUES (102,'ADDRESS102@EMAIL.COM') INSERT INTO @TAB2 (EMAILID,EMAILADDRESS) VALUES (103,'ADDRESS103@EMAIL.COM') INSERT INTO @TAB2 (EMAILID,EMAILADDRESS) VALUES (104,'ADDRESS104@EMAIL.COM') INSERT INTO @TAB2 (EMAILID,EMAILADDRESS) VALUES (105,'ADDRESS105@EMAIL.COM') INSERT INTO @TAB2 (EMAILID,EMAILADDRESS) VALUES (105,'ADDRESS106@EMAIL.COM ') DECLARE @RESULTADO TABLE (EMAILID VARCHAR(200)) DECLARE MYCURSOR CURSOR FOR SELECT EMAILID FROM @TAB1 OPEN MYCURSOR FETCH NEXT FROM MYCURSOR INTO @EMAILID WHILE @@FETCH_STATUS = 0 BEGIN IF LEN(@EMAILID) > 0 SET @EMAILID = @EMAILID + @DELIMITADOR IF (CHARINDEX(',',@EMAILID) = 0) BEGIN INSERT INTO @RESULTADO (EMAILID) VALUES (@EMAILID) END ELSE BEGIN WHILE LEN(RTRIM(LTRIM(@EMAILID))) > 0 BEGIN SET @EMAILID = RTRIM(LTRIM(@EMAILID)) SET @AUX = SUBSTRING(@EMAILID, 1, (CHARINDEX(@DELIMITADOR, @EMAILID) - 1)) INSERT INTO @RESULTADO (EMAILID) VALUES (@AUX) SELECT @EMAILID = SUBSTRING(@EMAILID, CHARINDEX(@DELIMITADOR, @EMAILID) + 1, LEN(RTRIM(LTRIM(@EMAILID)))) END END FETCH NEXT FROM MYCURSOR INTO @EMAILID END SELECT R.EMAILID,EMAILADDRESS FROM @RESULTADO R, @TAB2 T2 WHERE T2.EMAILID = R.EMAILID CLOSE MYCURSOR DEALLOCATE MYCURSOR Podes transformá-lo em procedure ou função dependendo da vossa necessidade. Fica ligado nos tipos dos campos. Dúvidas? É só se manifestar!
  22. Tb não captei bem o que queres. Mas veja se este exemplo lhe a uma luz: declare @teste table (data datetime, natureza int) insert into @teste (data,natureza) values ('2008-01-02',0) insert into @teste (data,natureza) values ('2008-01-02',1) insert into @teste (data,natureza) values ('2008-01-02',0) insert into @teste (data,natureza) values ('2008-01-02',1) insert into @teste (data,natureza) values ('2008-01-03',0) insert into @teste (data,natureza) values ('2008-01-03',1) insert into @teste (data,natureza) values ('2008-01-03',0) select max(data),count(data) from @teste group by data having count(data) <> 4
  23. jothaz

    Discriminar Por Data

    Camarada, Post ai o que você têm para facilitar! t+
  24. jothaz

    Consulta Data

    Camarada, Uma analisada rápida e acho que o desbeiço é aqui: where CRJJ04.data >= "#10/04/2007#" and CRJJ04.data <= "#30/04/2007#" " Troca por: " where CRJJ04.data >= #10/04/2007# and CRJJ04.data <= #30/04/2007#" t+
  25. Camarada, É um assunto vasto e é recomendavel um lida no books online mas um roteiro por auto seria: Iniciar --> Menu MS Sql --> Enterprise Manager escolha o server onde será linka do outro server --> Apra a pasta Security --> Linked servers. Agora deves levar em consideração que terá de possuir usuários com as devidas permissões nos dois bd senão nada feito. Claro deve-se considerar toda a parte da estrutura da rede: relação entre os dominios, firewall (se mal configurado por causar problemas) bem como permissões. funciona bem e você poderá inclusive linkar servidores de outros bd´s. já trabalhei com o Sybase em conjunto com SQL Server e rode na boa. Faça uns teste e vá posta as dúvidas. Mas me parece que o caminho é por ai. t+
×
×
  • Criar Novo...