· 6 years ago · Jul 02, 2019, 03:22 PM
1DROP DATABASE IF EXISTS mydb;
2CREATE DATABASE IF NOT EXISTS mydb;
3
4USE mydb;
5
6CREATE TABLE clientes (
7 cod_clientes INT UNSIGNED NOT NULL AUTO_INCREMENT,
8 nome_cliente VARCHAR (50) NOT NULL,
9 cnpj VARCHAR (14) NOT NULL,
10 PRIMARY KEY (cod_clientes)
11) ENGINE = innodb;
12
13CREATE TABLE funcionarios (
14 cod_funcionarios INT UNSIGNED NOT NULL AUTO_INCREMENT,
15 login VARCHAR(15) NOT NULL,
16 email VARCHAR(50) NOT NULL,
17 senha VARCHAR(15) NOT NULL,
18 cpf VARCHAR (11) NOT NULL UNIQUE,
19 PRIMARY KEY (cod_funcionarios)
20 ) ENGINE = innodb;
21
22CREATE TABLE erros(
23 cod_erros INT UNSIGNED NOT NULL AUTO_INCREMENT,
24 tipo_erro VARCHAR (150) NOT NULL,
25 solucao TEXT NOT NULL,
26 data_ocorrencia DATE,
27 sistema VARCHAR (30) NOT NULL,
28 Fk_Funcionarios INT UNSIGNED,
29 Fk_Clientes INT UNSIGNED,
30 PRIMARY KEY (cod_erros),
31 FOREIGN KEY (Fk_Funcionarios) REFERENCES funcionarios (cod_funcionarios) ON UPDATE CASCADE ON DELETE RESTRICT,
32 FOREIGN KEY (Fk_Clientes) REFERENCES clientes (cod_clientes) ON UPDATE CASCADE ON DELETE RESTRICT
33 ) ENGINE = innodb;
34
35USE mydb;
36
37insert into clientes (nome_cliente, cnpj) values
38("maria", "99999999999998"),
39("joao","99999999999997");
40SELECT *FROM clientes;
41
42 insert into erros (tipo_erro, solucao, data_ocorrencia, sistema) values
43 ("Erro na Instancia ", "1) Verificar se o NET Framework 4.6.2 está instalado na máquina e com seus recursos ativados. (Verifique os recursos indo em -> Painel de Controle > Programas e Recursos > Ativar ou Desativar Recursos do Windows > Em todos Net framework que estão lá - ative todos os recursos e reinicie a máquina).
44 2) Verificar se o IPV6 está desativado para evitar problemas de conexão.
45 3) Verificar se as regras de entrada no firewall estão habilitadas em 'propriedades do Windows defender firewall', e habilitar as portas para evitar problemas (1433, 9004, 9009), e habilitar as regras de entrada também. Ou desativar o firewall (não recomendado).
46 4) Verificar se o Anti-vírus está atrapalhando com a conexão do Hiper.
47 5) Verificar em serviços (Win+R e digite: 'services.msc' ou vá em pesquisar no menu iniciar e digite: 'serviços'.), e verifique se as instâncias como o: SQL SERVER (Hiper) está ‘iniciado’.
48 6) Verificar se o nome do 'desktop' e o do computador(logon / apelido da máquina) são iguais, pois se for, o SQL Server não irá aceitar fazer a conexão. Os nomes devem ser diferentes.
49 7) Agora abra o SSMS normalmente e faça o login com o SA sem por a senha, e depois configure.", "1888/08/25","HIPER", 1),
50
51 ("Falha de comunicação com o gestão", "Este erro é comum no Windows 7, devido as atualizações do Windows Update. Geralmente a atualização do Windows 7 não é automática como o do Windows 10. Então é necessário que faça a atualização do Windows Update.", "1888/08/25","HIPER", 2);
52 SELECT *FROM erros;
53
54DROP VIEW IF EXISTS VIEW_LISTA_ERROS;
55
56CREATE VIEW VIEW_LISTA_ERROS AS
57SELECT clientes.nome_cliente AS Cliente, erros.cod_erros AS ID, erros.tipo_erro AS Erro, erros.solucao AS Solução, erros.data_ocorrencia AS Data, erros.sistema AS Sistema, funcionarios.email AS Email_do_Funcionario
58FROM clientes, erros, funcionarios
59where erros.Fk_Clientes = clientes.cod_clientes and erros.Fk_Funcionarios = funcionarios.cod_funcionarios
60group by cod_erros, Fk_Clientes, Fk_Funcionarios;
61
62select *from VIEW_LISTA_ERROS;
63
64//Caso não ocorra nenhum erro, permita que os dados sejam inseridos no banco.
65 if ($row == 0) {
66
67 $query2 = "insert into clientes(nome_cliente, cnpj)
68 values('{$nome_cliente}', '{$cnpj}')";
69 mysqli_query(conexao(), $query2);
70
71 $query = "insert into erros(tipo_erro,solucao,data_ocorrencia,sistema)
72 values('{$nome_erro}', ('{$solucao}'), ('{$data}'), '{$sistema}')";
73 mysqli_query(conexao(), $query);
74 }
75
76 header('location: paginaConsulta.php');
77}