Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Lancellotte

Criar Banco MDB via programação

Recommended Posts

Estou tentando Criar um Banco MDB via programação, procurei na intenet e achei algumas coisas que me ajudaram

mais agora estou com um probleminha...

não estou conseguindo criar campos do tipo duplo ( com 4 casas decimais), auto increment e nem definir minha chave primaria..

 

segue meus codigos:

 

procedure TFrm_Importacao.CriarClick(Sender: TObject);
   begin
      If Frm_Importacao.SaveDialog.Execute=True Then
          CriarTabela(Frm_Importacao.SaveDialog.FileName);
   End;

Procedure CriarTabela (Path:String);
Var
  ConectStr,Comando:String;
Begin
  if Path = '' then
    begin
      ShowMessage('Nome da base de dados não informada.');
      exit;
    end;
  With Data_Module Do
    Begin
      ConectStr:= 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+Path+';Jet OLEDB:Engine Type=5';
      Catalog.Create1(ConectStr);
      Catalog.Disconnect;
// Definindo a base de dados
      ConnectionProdutos.Connected:=False;
      ConectStr := 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source='+Path+';Persist Security Info=False';
      ConnectionProdutos.ConnectionString :=ConectStr;

// Criando a tabela..
      { Tabela PRODUTOS }
      comando := 'CREATE TABLE PRODUTOS (' +
      'COD_PRODUTO INT,' +
      'COD_ORDENACAO TEXT(50),'+
      'GRUPO TEXT(20),'+
      'DESCRICAO TEXT(50))';
      Command.CommandText := comando;
      Command.Execute;
    End;
End;

Desde de já, Obrigado!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Qual o erro que ocorre? Que BD está utilizando?

 

[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Qual o erro que ocorre? Que BD está utilizando?

 

[]'s

 

Estou usando ADO e um componente do Delphi que instalei a pouco, o ADOX

 

Não está ocorrendo erro nenhum, o problema é que eu nao sei a sintaxe correta para definir auto increment,

campo tipo duplo e nem definir chave primaria

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sim.... mas que BD usa? SQL Server? MySQL? ORACLE? Cada BD tem uma sintaxe própria para declarar campos.... as vezes uma simples lida no help do BD já trás exemplos de como fazer ...

 

[]'s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Achei a sintaxe para chave primaria e para o double, mas ainda não consegui configurar as casas decimais do campo VALOR. Ficou Assim:

// Criando a tabela..
      { Tabela PRODUTOS }
      comando := 'CREATE TABLE PRODUTOS (' +
      'COD_PRODUTO COUNTER,' +
      'COD_ORDENACAO TEXT(50),'+
      'GRUPO TEXT(20),'+
      'DESCRICAO TEXT(50),'+
      'VALOR DOUBLE,'+
      'CONSTRAINT CodigoDoProduto PRIMARY KEY (COD_PRODUTO))';
      Command.CommandText := comando;
      Command.Execute;

Eu quero colocar que o Campo VALOR tem 4 casas decimais,

Ja tentei assim:

     VALOR DOUBLE(5,4)
     VALOR DOUBLE(5:4)
e por enquanto nao deu em nada.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.