O MySQL não esta conseguindo executar a linha abaixo, deve ter erro de sintaxe, qual a forma correta:
sql="SELECT e.id, "+"e.id_cliente, "+"e.telefone, "+"e.cep, "+"e.endereco, "+"e.numero, "+"e.complemento, "+"e.bairro, "+"e.cidade, "+"e.estado, "+"c.nome_razao, "+"FROM cli_entrega as e JOIN cliente as c "+"ON e.id_cliente = c.id_cgc_cpf ORDER BY c.nome_razao;";
você selecionou os campos mas, ANTES da clausula FROMNÃO TEM VIRGULA, a virgula no SELECT é para separar os campos que você está selecionando para o resultado.
sql="SELECT e.id, "+"e.id_cliente, "+"e.telefone, "+"e.cep, "+"e.endereco, "+"e.numero, "+"e.complemento, "+"e.bairro, "+"e.cidade, "+"e.estado, "+"c.nome_razao "// REMOVI A VIRGULA QUE NÃO FAZ PARTE+"FROM cli_entrega as e JOIN cliente as c "+"ON e.id_cliente = c.id_cgc_cpf ORDER BY c.nome_razao;";
Não para para identificar mais problemas, que podem ser de grafia dos campos e talvez até outros, mas, de cara é a virgual antes do FROM.
Leitura recomendada:
lucas.sampaio1 like
Uma outra dica é sobre o alias da tabela. Não precisa do "AS" Ao invés de
SELECTcolumnsFROMtableAStb;--como"AS"paratabela
pode ser:
SELECTcolumnsFROMtabletb;--semo"AS"paratabela
No final das contas o resultado é o mesmo. Porém, é mais difícil encontrar queries com o AS para definir alias para tabelas. É mais comum para colunas.
Dragoon2 likes
Bom eu não entendi bem o que você quis dizer de não utilizar AS na clausa FROM? é um boa prática e todos os Frameworks de Persistências utilizam para diferenciar quando se utilizam JOIN, LEFT e RIGHT, por exemplo.
Claro se tiver dizendo que a pesquisa tem somente uma tabela, não precisa, agora se tiver JOIN, varias junções etc, pode utilizar sem medo ou não, agora fica a cargo do desenvolvedor quando tiver campos com o mesmo nome e precisam relacionar várias tabelas, pela minha experiência eu acho muito util, mas, não é obrigatório.