Comentários sobre: Criando tabelas através dos recursos de metadata do dbExpress no Delphi http://www.andreanolanusse.com/pt/criando-tabelas-atraves-dos-recursos-de-metadata-do-dbexpress-no-delphi/ Andreano Lanusse blog - artigos, tutoriais e vídeos sobre tecnologia, desenvolvimento de software (Delphi XE4, C#, PHP, .NET) e técnicas de programação Wed, 11 Apr 2012 17:52:43 +0000 hourly 1 https://wordpress.org/?v=6.5.7 Por: Eric Serafim http://www.andreanolanusse.com/pt/criando-tabelas-atraves-dos-recursos-de-metadata-do-dbexpress-no-delphi/#comment-9001 Wed, 11 Apr 2012 17:52:43 +0000 http://www.andreanolanusse.com/pt/dbxexpress-metadata-no-delphi-2009/#comment-9001 Olá Andreano,

Com relação a criação funciona muito bem, parabéns pelo exemplo, mas para alteração de tabela e coluna não consegui achar uma solução, tentei da forma abaixo mais recebe uma exceção.
Estou utilizando a versão do XE, gostaria de receber um retorno a respeito.

Abraço Eric Serafim

TTabela = class(TDBXMetaDataTable)

function TBancoDados.TTabela.AlterarTabela: Boolean;
var
metaProvider: TDBXDataExpressMetaDataProvider;
sql: UnicodeString;
begin
metaProvider := nil;

try
try
metaProvider := TDBXDataExpressMetaDataProvider.Create(FOwner.FConexao.DBXConnection);
metaProvider.Open;

sql := metaProvider.MakeAlterTableSql(Self.TableStorage, Self.ColumnsStorage); #1
Result := FOwner.ExecutarScript(sql);
Except
raise;
end;
finally
metaProvider.Free;
end;
end;

#1 – FWriter.MakeSqlAlter(Builder, Table, Columns); #2

#2 – procedure TDBXBaseMetaDataWriter.MakeSqlAlterTable(const Buffer: TDBXStringBuffer; const Table: TDBXTableRow; const Columns: TDBXTable);
Original := Table.OriginalRow; //A exceção ocorre neste método (exception “Unsupported Operation”)

]]>
Por: Leo http://www.andreanolanusse.com/pt/criando-tabelas-atraves-dos-recursos-de-metadata-do-dbexpress-no-delphi/#comment-8875 Wed, 28 Mar 2012 13:38:35 +0000 http://www.andreanolanusse.com/pt/dbxexpress-metadata-no-delphi-2009/#comment-8875 Andreano, andei pesquisando e não consegui encontar nada a respeito de como retornar as colunas que são chaves primária de uma determinada tabela através dos recursos de MetaData.

Com o MetaData é possível fazer isso?

]]>
Por: Júlio César Ferreira (@jcmferreira) http://www.andreanolanusse.com/pt/criando-tabelas-atraves-dos-recursos-de-metadata-do-dbexpress-no-delphi/#comment-8129 Mon, 30 Jan 2012 11:42:46 +0000 http://www.andreanolanusse.com/pt/dbxexpress-metadata-no-delphi-2009/#comment-8129 Olá!

O framework dbExpress consegue executar CreateTable e DropTable mas, é possível realizar um AlterTable? AlterColumn?

A configuração da estrutura de uma tabela do banco de dados não se resume a criar e dropar colunas e demais…

]]>
Por: Júlio César Ferreira (@jcmferreira) http://www.andreanolanusse.com/pt/criando-tabelas-atraves-dos-recursos-de-metadata-do-dbexpress-no-delphi/#comment-8067 Mon, 23 Jan 2012 19:29:17 +0000 http://www.andreanolanusse.com/pt/dbxexpress-metadata-no-delphi-2009/#comment-8067 Achei muito bom o recurso de METADATA com o Delphi, utilizando o dbExpress. Isso acaba com uma série de problemas com a interoperabilidade de bancos de dados diferentes.

O recurso de criar chaves AutoIncrement é fantástico. Mas, no seu exemplo, via datasnap, é possível recuperar o novo código para o campo “STATEID” após uma inclusão via Client-Server?

IdField := TDBXInt32Column.Create(‘STATEID’);
IdField.Nullable := false;
IdField.AutoIncrement := true;
State.AddColumn(IdField);

]]>
Por: Andreano Lanusse http://www.andreanolanusse.com/pt/criando-tabelas-atraves-dos-recursos-de-metadata-do-dbexpress-no-delphi/#comment-6500 Thu, 22 Sep 2011 21:03:54 +0000 http://www.andreanolanusse.com/pt/dbxexpress-metadata-no-delphi-2009/#comment-6500 Em resposta a Pedro Lopes.

@Pedro com XE e XE2

]]>
Por: Pedro Lopes http://www.andreanolanusse.com/pt/criando-tabelas-atraves-dos-recursos-de-metadata-do-dbexpress-no-delphi/#comment-6487 Wed, 21 Sep 2011 11:01:04 +0000 http://www.andreanolanusse.com/pt/dbxexpress-metadata-no-delphi-2009/#comment-6487 Isto funciona com o Delphi XE/XE2 ?

]]>
Por: João http://www.andreanolanusse.com/pt/criando-tabelas-atraves-dos-recursos-de-metadata-do-dbexpress-no-delphi/#comment-6295 Fri, 19 Aug 2011 13:44:53 +0000 http://www.andreanolanusse.com/pt/dbxexpress-metadata-no-delphi-2009/#comment-6295 Obrigado pelo exemplo Andreano. Penso que ficou claro como criar uma tabela com “Provider.CreateTable(Country); “, no entanto isso é só parte da solução, pois se não existir um “Provider.AlterTable(Tabela, Campo);”, essa funcionalidade não serve de muito. A questão é: Como fazer um Alter Table com o metadata? Obrigado

]]>
Por: Alex Lang http://www.andreanolanusse.com/pt/criando-tabelas-atraves-dos-recursos-de-metadata-do-dbexpress-no-delphi/#comment-6123 Mon, 25 Jul 2011 21:01:58 +0000 http://www.andreanolanusse.com/pt/dbxexpress-metadata-no-delphi-2009/#comment-6123 Andreano, não encontrei um tópico adequado, contudo gostaria de saber se é possivel conectar o SQL Azure através do DBExpress ?

]]>
Por: Andreano Lanusse http://www.andreanolanusse.com/pt/criando-tabelas-atraves-dos-recursos-de-metadata-do-dbexpress-no-delphi/#comment-5305 Mon, 16 May 2011 19:37:24 +0000 http://www.andreanolanusse.com/pt/dbxexpress-metadata-no-delphi-2009/#comment-5305 Em resposta a Mauricio.

Quando sua aplicação precisa atualizar o schema da base de dados, mas o seu software suporta diferentes bancos de dados, com o metadata do dbexpress você não precisa saber como aplicar escrever o script, o dbexpress driver gera o script especifico para cada banco.

]]>
Por: Mauricio http://www.andreanolanusse.com/pt/criando-tabelas-atraves-dos-recursos-de-metadata-do-dbexpress-no-delphi/#comment-5290 Sat, 14 May 2011 11:45:44 +0000 http://www.andreanolanusse.com/pt/dbxexpress-metadata-no-delphi-2009/#comment-5290 Olá, legal o artigo. Minha duvida é: Em quais situações que isso seria funcional?

]]>
Por: Andreano Lanusse http://www.andreanolanusse.com/pt/criando-tabelas-atraves-dos-recursos-de-metadata-do-dbexpress-no-delphi/#comment-3901 Sun, 06 Feb 2011 03:13:09 +0000 http://www.andreanolanusse.com/pt/dbxexpress-metadata-no-delphi-2009/#comment-3901 Em resposta a Lucas.

Lucas,

As classes de execução do dbExpress framework e VCL tem o método prepare.

]]>
Por: Lucas http://www.andreanolanusse.com/pt/criando-tabelas-atraves-dos-recursos-de-metadata-do-dbexpress-no-delphi/#comment-3851 Fri, 04 Feb 2011 13:27:47 +0000 http://www.andreanolanusse.com/pt/dbxexpress-metadata-no-delphi-2009/#comment-3851 Legal o artigo, mas fiquei com uma dúvida.

Sempre vejo em programas como o IbExpert o “Prepared Statement” rodando antes da execução.

Como faço isso com dbx e delphi?

]]>