Clipper On Line • Ver Tópico - Alteração de estrutura no MySQL

Alteração de estrutura no MySQL

Discussão sobre Banco de Dados e RDDs para Clipper/[x]Harbour.

Moderador: Moderadores

 

Alteração de estrutura no MySQL

Mensagempor JoséQuintas » 04 Ago 2020 17:49

Uma coisa muito legal no MySQL é alterar estrutura

      IF nVersaoDBF < 20200804
         :ExecuteCmd( "ALTER TABLE JPBANCARIO CHANGE COLUMN BAHIST BAHIST VARCHAR(50) NOT NULL DEFAULT ''" )
      ENDIF


Se eu deixar isso aí até o final do ano..... não tem problema.
O servidor MySQL é inteligente, e se não precisa mexer na estrutura, ele não faz nada.
Estou alterando o campo de 40 pra 50 caracteres.
Se precisar alterar, ele altera, senão deixa como está, só vai perder menos de 1 segundo pra fazer o teste.

Deixo isso no início do aplicativo, e conforme os clientes vão atualizando, a estrutura vai sendo alterada.

Lógico, aqui vai ficar rodando e executando trocentas vezes, mas no cliente, só até eu alterar o número de "versão de arquivos".
Caso eu altere a versão atual pra 20200804, vai executar só na atualização, senão, vai ficar assim até uma próxima versão.
Simples e prático, sem parar ninguém, só um tempo na primeira atualização.
Lógico também.... na atualização REAL, o tempo vai depender do tamanho dessa tabela.

Mas nada que se compare a DBF... Isso facilita muito.

No caso de tipo de campo, tipo caractere pra numérico....
Nesse caso pode precisar tratamento especial, porque se o conteúdo for '', ou 'A', antes de alterar pra numérico, é necessário deixar o conteúdo numérico, por exemplo, trocar '' por '0'... ou NULL .... tá aí um bom uso pra NULL, porque entra em qualquer tipo de campo e não atrapalha mudança de caractere pra numérico.
José M. C. Quintas
Harbour 3.4, mingw, gtwvg, multithread, dbfcdx, ADO+MySql, hbnetio, PNotepad
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"
Avatar de usuário

JoséQuintas
Colaborador

Colaborador
 
Mensagens: 14413
Data de registro: 26 Fev 2007 11:59
Cidade/Estado: São Paulo-SP
Curtiu: 13 vezes
Mens.Curtidas: 860 vezes



Retornar para Banco de Dados

Quem está online

Usuários vendo este fórum: Nenhum usuário registrado online e 2 visitantes


Ola Amigo, espero que meu site e forum tem lhe beneficiado, com exemplos e dicas de programacao.
Entao divulgue o link da Doacao abaixo para seus amigos e redes sociais ou faça uma doacao para o site forum...
MUITO OBRIGADO PELA SUA DOACAO!
Faça uma doação para o forum
cron
v
Olá visitante, seja bem-vindo ao Fórum Clipper On Line!
Efetue o seu login ou faça o seu Registro