No caso, não haverá mudanças de base de dados. Sera mysql mesmo.

Por enquanto esta mais que otimo a solução.


att.
Jackson F. de A. Mafra
Front-End / Back-End Software Engineer
twitter: @jacksonfdam | LinkedIn: http://linkedin.com/in/jacksonfdam


2010/8/25 Allan Torres ( Hazi) <[email protected]>

> Jackson,
> Um fator importante que você tem que levar em consideração nessa hora é a
> questão do banco que vc trabalha e uma futura migração, sinceramente nunca
> usei nem sei  se esse comando é padrão SQL ANSI e se todos os bancos
> aceitam, mas o importante é pensar, e se um dia seu banco mudar pra outra
> plataforma, o comando continua valido?
>
>
> Allan
>
> 2010/8/25 Jackson Ferreira de Andrade Mafra <[email protected]>
>
> É que gostaria de deixar estas tarefas ao Banco, mas sem uso de Triggers.
>>
>>
>>
>> att.
>> Jackson F. de A. Mafra
>> Front-End / Back-End Software Engineer
>> twitter: @jacksonfdam | LinkedIn: http://linkedin.com/in/jacksonfdam
>>
>>
>> 2010/8/25 Allan Torres ( Hazi) <[email protected]>
>>
>> Particularmente prefiro usar uma solução um pouco diferente.
>>>
>>> Meu controller vai assim,
>>>
>>> function salvar() {
>>>         //Carregando os models
>>>         $this->load->model ( 'Avisos_model' );
>>>         $obj = array ('titulocomunicado' => $this->input->post (
>>> 'titulocomunicado' ), 'introcomunicado' => $this->input->post (
>>> 'introcomunicado' ), 'textocomunicado' => $this->input->post (
>>> 'textocomunicado' ), 'numcontrole' => $this->input->post ( 'numcontrole' ),
>>> 'status' => $this->input->post ( 'status' ) );
>>>
>>>         if (is_null ( $this->input->post ( 'idcomunicado' ) )) {
>>>             $data ['retorno'] = $this->Avisos_model->salvar ( $obj );
>>>         } else {
>>>             $id = $this->input->post ( 'idcomunicado' );
>>>             $data ['retorno'] = $this->Avisos_model->atualizar ( $id,
>>> $obj );
>>>         }
>>>
>>>         redirect( 'avisos');
>>>     }
>>>
>>> e no model assim:
>>>
>>> //Recuperando categorias e totais de posts
>>>     function salvar($obj) {
>>>         $this->db->insert ( $this->table, $obj );
>>>         return $this->db->insert_id ();
>>>     }
>>>
>>>     function atualizar($id, $obj) {
>>>         $this->db->where ( 'idcomunicado', $id );
>>>         $this->db->update ( $this->table, $obj );
>>>     }
>>>
>>>
>>>
>>> Ou seja, quando crio o controller ele tem uma regra basica se o id for
>>> enviado juntamente com o array de dados, o controller direciona para o
>>> atualizar, se não ele apenas salva no banco um novo registro, concordo que
>>> sua solução é mais simples em uma query só, mas assim eu posso reutilizar
>>> meu codigo de uma forma mais interessante sem contar que fica mais
>>> organizado e uso os proprios comandos DB do code e não preciso fazer querys
>>> sql ...
>>>
>>> Bem, mas de qualquer forma funciona, mais uma vez eu digo, codigo é igual
>>> nescau, com mais ou menos chocolate, mas todos são nescau e fica gostoso no
>>> final.
>>>
>>> Allan
>>>
>>>
>>> On Wed, Aug 25, 2010 at 1:12 PM, Jackson Ferreira de Andrade Mafra <
>>> [email protected]> wrote:
>>>
>>>> A SQL fica assim, sem ter que fazer if no php...
>>>>
>>>>
>>>> INSERT IGNORE INTO
>>>>      minha_tabela
>>>> VALUES
>>>>     (meu_valor1, meu_, meu_valor3)
>>>>
>>>>     ON DUPLICATE KEY campo2=meu_valor2, campo3=meu_valor3
>>>>
>>>>
>>>> att.
>>>> Jackson F. de A. Mafra
>>>> Front-End / Back-End Software Engineer
>>>> twitter: @jacksonfdam | LinkedIn: http://linkedin.com/in/jacksonfdam
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> [email protected]
>>>> http://www.codeigniter.com.br
>>>> http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
>>>>
>>>> ---------------------------
>>>> Oportunidade de negócio
>>>> http://www.franquiasargohost.net
>>>> ---------------------------
>>>>
>>>>
>>>
>>>
>>> --
>>> Allan Torres
>>>
>>>
>>> _______________________________________________
>>> [email protected]
>>> http://www.codeigniter.com.br
>>> http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
>>>
>>> ---------------------------
>>> Oportunidade de negócio
>>> http://www.franquiasargohost.net
>>> ---------------------------
>>>
>>>
>>
>> _______________________________________________
>> [email protected]
>> http://www.codeigniter.com.br
>> http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
>>
>> ---------------------------
>> Oportunidade de negócio
>> http://www.franquiasargohost.net
>> ---------------------------
>>
>>
>
>
> --
> Allan Torres
>
>
> _______________________________________________
> [email protected]
> http://www.codeigniter.com.br
> http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br
>
> ---------------------------
> Oportunidade de negócio
> http://www.franquiasargohost.net
> ---------------------------
>
>
_______________________________________________
[email protected]
http://www.codeigniter.com.br
http://codeigniter.com.br/mailman/listinfo/lista_codeigniter.com.br

---------------------------
Oportunidade de negócio
http://www.franquiasargohost.net
---------------------------

Responder a