-
Conteúdo Similar
-
Por FabianoSouza
Preciso corrigir o erro "Somente uma expressão pode ser especificada na lista de seleção quando a subconsulta não é introduzida com EXISTS." da minha consulta.
SELECT TA.titulo AS 'Trilha' , (SELECT CAST(ROUND((Comportamental * 100.0) / (Comportamental + Técnico), 2) AS DECIMAL(5,1)) AS Comportamental ,CAST(ROUND((Técnico * 100.0) / (Comportamental + Técnico), 2) AS DECIMAL(5,1)) AS Técnico FROM ( SELECT SUM(CASE WHEN dbo.tabB.enfoque = '1' THEN 1 ELSE 0 END) AS Comportamental, SUM(CASE WHEN dbo.tabB.enfoque = '2' THEN 1 ELSE 0 END) AS Técnico, COUNT(*) AS Total FROM dbo.tabB ) tab ) FROM dbo.tabA AS TA Nessa consulta, preciso trazer o título (da tabA) e o resultado de um cálculo feito na subconsulta, nos campos Comportamental e Técnico.
-
Por JoãoNeto2
Eu estava usando um programa em PHP que conectava e lia um banco de dados SQL Server. Do nada ele parou de funcionar apresentando a seguinte mensagem :
O cliente não pode estabelecer conexão porque foi encontrado um erro durante os handshakes anteriores ao logon. As causas comuns incluem a tentativa do cliente de conectar-se a uma versão sem suporte do SQL Server, o servidor muito ocupado para aceitar novas conexões ou uma limitação de recursos (memória ou máximo de conexões permitidas) no servidor.
Algumas informações para esclarecer :
1-Consigo conectar o banco via Dbeaver da própria máquina que o programa PHP deixou de funcionar
2-De outra máquina consigo conectar esse mesmo banco com o mesmo programa PHP
3-Essa mesma máquina conecta outro banco SQL Server de outro cliente
Ou seja, o mesmo programa conecta o mesmo banco mas de outra máquina e a mesma máquina consegue conectar outro banco SQL.
O que pode ser?
-
Por evertondesa
Olá Amigos.
Estou criando uma classe para controlar estoques em locais diferentes, porem a classe "Estoques" possui uma chave composta que esta na classe "EstoquePK".
Estou utilizando EclipseLink Com JPA. Tudo esta OK dentro do Eclipse, porem quando executo o programa o Java tenta criar a tabela conforma abaixo. Esta retornando o erro "A coluna 'ID' da tabela 'SB2' é do tipo inválido para uso como coluna de chaves em um índice."
CREATE TABLE SB2 ( ID IMAGE NOT NULL ,B2_ALTERA VARCHAR(10) NULL ,B2_CMUNIT FLOAT(32) NULL ,B2_DTCADASTRO VARCHAR(10) NULL ,B2_DTFECHA VARCHAR(10) NULL ,B2_DTINTEG VARCHAR(10) NULL ,B2_DTULTINV VARCHAR(10) NULL ,B2_QATU INTEGER NULL ,B2_QFIM FLOAT(32) NULL ,B2_VATU FLOAT(32) NULL ,B2_VFIM FLOAT(32) NULL ,PRIMARY KEY (ID) ) O problema é que o SQL não aceita campo IMAGE como chave primaria da tabela então retorna erro.
Segue abaixo as classe que estou criando.
package entidades; import java.io.Serializable; import javax.persistence.Column; import javax.persistence.Embeddable; import javax.persistence.JoinColumn; import javax.persistence.ManyToOne; @Embeddable public class EstoquesPK implements Serializable { private static final long serialVersionUID = -637018809489152388L; @ManyToOne @JoinColumn(name = "B2_COD", referencedColumnName = "B1_COD") private Produtos B2_COD; @Column(length = 2) private String B2_LOCAL; public Produtos getB2_COD() { return B2_COD; } public void setB2_COD(Produtos b2_COD) { B2_COD = b2_COD; } public String getB2_LOCAL() { return B2_LOCAL; } public void setB2_LOCAL(String b2_LOCAL) { B2_LOCAL = b2_LOCAL; } @Override public int hashCode() { final int prime = 31; int result = 1; result = prime * result + ((B2_COD == null) ? 0 : B2_COD.hashCode()); result = prime * result + ((B2_LOCAL == null) ? 0 : B2_LOCAL.hashCode()); return result; } @Override public boolean equals(Object obj) { if (this == obj) return true; if (obj == null) return false; if (getClass() != obj.getClass()) return false; EstoquesPK other = (EstoquesPK) obj; if (B2_COD == null) { if (other.B2_COD != null) return false; } else if (!B2_COD.equals(other.B2_COD)) return false; if (B2_LOCAL == null) { if (other.B2_LOCAL != null) return false; } else if (!B2_LOCAL.equals(other.B2_LOCAL)) return false; return true; } } E abaixo a entidade
import java.io.Serializable; import javax.persistence.Column; import javax.persistence.EmbeddedId; import javax.persistence.Entity; import javax.persistence.Id; import javax.persistence.Table; @Entity @Table(name = "SB2") public class Estoques implements Serializable { private static final long serialVersionUID = 5999236902534007386L; @EmbeddedId @Id private EstoquesPK id; private int B2_QATU; private double B2_CMUNIT; private double B2_VATU; private double B2_QFIM; private double B2_VFIM; @Column(length = 10) private String B2_DTFECHA; @Column(length = 10) private String B2_DTULTINV; @Column(length = 10) private String B2_DTCADASTRO; @Column(length = 10) private String B2_ALTERA; @Column(length = 10) private String B2_DTINTEG; public EstoquesPK getId() { return id; } public void setId(EstoquesPK id) { this.id = id; } public int getB2_QATU() { return B2_QATU; } public void setB2_QATU(int b2_QATU) { B2_QATU = b2_QATU; } public double getB2_CMUNIT() { return B2_CMUNIT; } public void setB2_CMUNIT(double b2_CMUNIT) { B2_CMUNIT = b2_CMUNIT; } public double getB2_VATU() { return B2_VATU; } public void setB2_VATU(double b2_VATU) { B2_VATU = b2_VATU; } public double getB2_QFIM() { return B2_QFIM; } public void setB2_QFIM(double b2_QFIM) { B2_QFIM = b2_QFIM; } public double getB2_VFIM() { return B2_VFIM; } public void setB2_VFIM(double b2_VFIM) { B2_VFIM = b2_VFIM; } public String getB2_DTFECHA() { return B2_DTFECHA; } public void setB2_DTFECHA(String b2_DTFECHA) { B2_DTFECHA = b2_DTFECHA; } public String getB2_DTULTINV() { return B2_DTULTINV; } public void setB2_DTULTINV(String b2_DTULTINV) { B2_DTULTINV = b2_DTULTINV; } public String getB2_DTCADASTRO() { return B2_DTCADASTRO; } public void setB2_DTCADASTRO(String b2_DTCADASTRO) { B2_DTCADASTRO = b2_DTCADASTRO; } public String getB2_ALTERA() { return B2_ALTERA; } public void setB2_ALTERA(String b2_ALTERA) { B2_ALTERA = b2_ALTERA; } public String getB2_DTINTEG() { return B2_DTINTEG; } public void setB2_DTINTEG(String b2_DTINTEG) { B2_DTINTEG = b2_DTINTEG; } } Espero que alguém consiga me ajudar estou com muita dificuldade nisso.
-
Por Alisson Hoepers
Olá pessoal! Para mostrar a lista de um cadastro no meu sistema, eu populo a consulta em um DTO conforme abaixo. Minha pergunta é: Existe uma forma mais simples de popular a consulta na lista do DTO de forma mais simples?
public List<ObjetoDTO> find(Query query) { @SuppressWarnings("unchecked") List<Object[]> queryResult = query.getResultList(); List<ObjetoDTO> list = new ArrayList<>(); if (queryResult.isEmpty() == false) { for (Object[] item : queryResult) { ObjetoDTO dto = new ObjetoDTO(); dto.setId((Integer) item[0]); dto.setTitulo((String) (item[1])); dto.setDescricao((String) (item[2])); list.add(dto); } } return list; }
-
Por manoveio1
Gostaria de gravar uma sequencia numérica no banco de dados.
Exemplo:
No programa tem um campo onde o usuário vai informar o numero inicial :
Informe o numero inicial: 200
Outro campo pede quantidade gerada a partir desse numero informado:
Informe a quantidade a ser gerada: 50
Um botão: Gerar
A partir dai o programa tem que gerar os 50 numero a partir do numero informado e gava los em um banco de dados: 200-201-203…ate 249.
Como fazer?
-