Damon 20 Denunciar post Postado Setembro 20, 2013 Amiguinhos. Estou com um problema na hora de fazer o insert no banco SQL SERVER, eu preciso inserir a data e hora do SISTEMA em um campo chamado data em minhas tabelas. No Mysql eu faço o seguinte: $data = date("Y-m-d"); Agora no SQL server estou fazendo assim: $data = date("Y-m-d H:i:s"); mas não esta dando certo ele esta gravando null no banco ! Já conferir as minha variável ! Aguem pode me da uma ajuda ai ???? Compartilhar este post Link para o post Compartilhar em outros sites
InfoAssef 5 Denunciar post Postado Setembro 20, 2013 Bom dia Damon, Tenta assim: <?php $data = "2013-09-20"; $teste = "teste"; $sql = "INSERT INTO tabela (teste, data)VALUES('$teste','$data')"; $result = mssql_query($sql, $conexao); ?> Att Compartilhar este post Link para o post Compartilhar em outros sites
Guilherme Pacheco 4 Denunciar post Postado Setembro 20, 2013 // Dia 20/09/2013, às 10:14h e 25 segundos $data = "2005-08-31 14:35:25.0000";$sql = "insert into teste_tab (data) values ('$data')"; Você também pode usar a função getdate() do SQL Server (PEGA A DATA ATUAL): $sql = "insert into teste_tab (data) values ('getdate())"; Veja a documentação: http://technet.microsoft.com/pt-br/library/ms188383.aspx Espero ter ajudado. Compartilhar este post Link para o post Compartilhar em outros sites
Damon 20 Denunciar post Postado Setembro 20, 2013 Bom dia Damon, Tenta assim: <?php $data = "2013-09-20"; $teste = "teste"; $sql = "INSERT INTO tabela (teste, data)VALUES('$teste','$data')"; $result = mssql_query($sql, $conexao); ?> Att Bom dia InfoAssef Eu preciso pegar a data e hora do Sistema ! Vlw Att // Dia 20/09/2013, às 10:14h e 25 segundos $data = "2005-08-31 14:35:25.0000"; $sql = "insert into teste_tab (data) values ('$data')"; Você também pode usar a função getdate() do SQL Server (PEGA A DATA ATUAL): $sql = "insert into teste_tab (data) values ('getdate())"; Veja a documentação: http://technet.microsoft.com/pt-br/library/ms188383.aspx Espero ter ajudado. Guilherme quando eu uso a minha variável para pegar a data do sistema ele me da um erro !! $data = 'getdate()'; Erro de conversão ao converter datetime da seqüência de caracteres. Tem outra sugestão ? Compartilhar este post Link para o post Compartilhar em outros sites
Paulo Vinícius Matos 3 Denunciar post Postado Setembro 20, 2013 Ou então use uma função para inserir no formado data de bd. É mais prático e simples. Exemplo: <?php require('../conn/conn.php'); require('../funcoes/funcoes.php'); //convertendo data para enviar ao bd em formato AAAA/MM/DD $data_sql = data_to_sql($dt_inicial); $sql="SELECT * FROM TABELA WHERE nome_da_coluna='".$data_sql."'"; $mysql_query($sql); ?> Função que converte a data: <?php function data_to_sql($original){ return mysql_real_escape_string(substr($original,6,4).'-'.substr($original,3,2).'-'.substr($original,0,2)); } ?> Compartilhar este post Link para o post Compartilhar em outros sites
Damon 20 Denunciar post Postado Setembro 20, 2013 Ou então use uma função para inserir no formado data de bd. É mais prático e simples. Exemplo: <?php require('../conn/conn.php'); require('../funcoes/funcoes.php'); //convertendo data para enviar ao bd em formato AAAA/MM/DD $data_sql = data_to_sql($dt_inicial); $sql="SELECT * FROM TABELA WHERE nome_da_coluna='".$data_sql."'"; $mysql_query($sql); ?> Função que converte a data: <?php function data_to_sql($original){ return mysql_real_escape_string(substr($original,6,4).'-'.substr($original,3,2).'-'.substr($original,0,2)); } ?> Paulo vc pode me explicar melhor esta sua função !? Compartilhar este post Link para o post Compartilhar em outros sites
Paulo Vinícius Matos 3 Denunciar post Postado Setembro 20, 2013 Vamos lá... Pelos comentários vai dá pra entender facilmente. $dt_inicial = $_GET['dt_inicial']; / Pegando a data de algum susposto input no formato pt-br: 10/02/2013 //convertendo data para enviar ao bd em formato 2013/02/10$data_sql = data_to_sql($dt_inicial); chamo a função que converte a data para o formato de bd $sql="SELECT * FROM materia WHERE dt_publicacao='".$data_sql."'";mysql_query($sql); Lembrando de da 'required' para chamar a função que passei Compartilhar este post Link para o post Compartilhar em outros sites
Damon 20 Denunciar post Postado Setembro 20, 2013 Vamos lá... Pelos comentários vai dá pra entender facilmente. $dt_inicial = $_GET['dt_inicial']; / Pegando a data de algum susposto input no formato pt-br: 10/02/2013 //convertendo data para enviar ao bd em formato 2013/02/10 $data_sql = data_to_sql($dt_inicial); chamo a função que converte a data para o formato de bd $sql="SELECT * FROM materia WHERE dt_publicacao='".$data_sql."'"; mysql_query($sql); Lembrando de da 'required' para chamar a função que passei Assim entendi o que você quis dizer, então cara o probleminha é que eu não vou pega a data de nenhum formulário, eu vou pegar a data do sistema tipo 'rand'. No mysql eu usava date("Y-m-d"); e funcionava blz. Agora no SQL SERVER eu já usei date("Y-m-d H:i:s"), GETDATE() e não funcionou eu achei muito estranho a getdate não ter funcionado por que o campo na minha tabela esta especificado como datetime !! Compartilhar este post Link para o post Compartilhar em outros sites
buenoweb 7 Denunciar post Postado Setembro 20, 2013 Tente mudar o campo para varchar e insira a data no formato unix. Compartilhar este post Link para o post Compartilhar em outros sites
Damon 20 Denunciar post Postado Setembro 20, 2013 Tente mudar o campo para varchar e insira a data no formato unix. Buenoweb eu não vou inserir e vou pegar a data do sistema tipo getdate(). Tem como fazer isso usando um campo varchar ? Nunca ouvi falar tem como vc me explicar ? Compartilhar este post Link para o post Compartilhar em outros sites
buenoweb 7 Denunciar post Postado Setembro 20, 2013 Altere o campo do SQL Server para varchar. A inserir, use a função time(). No campo será inserido vários algarismos correspondentes a data unix que podem ser convertidos na data e hora como conhecemos. Compartilhar este post Link para o post Compartilhar em outros sites
shini 318 Denunciar post Postado Setembro 20, 2013 posta ai o seu codigo de insert Compartilhar este post Link para o post Compartilhar em outros sites
buenoweb 7 Denunciar post Postado Setembro 21, 2013 Imagine que vc tem um campo data, varchar de comprimento 50. insert into tabela (data) values (''.time()."') Compartilhar este post Link para o post Compartilhar em outros sites
Damon 20 Denunciar post Postado Dezembro 20, 2013 Esse problema já foi resolvido.Obrigado a todos. Compartilhar este post Link para o post Compartilhar em outros sites