MSSQL查询错误 - 无效的列名称'IdCliente'

时间:2017-02-10 18:24:36

标签: php sql-server

我正在尝试将列插入表中,但是有一个错误,我无法弄清楚如何修复它。我的代码:

<?php
//connect to sql

    // Dados do banco
    $dbhost   = "db-gadel-campinas.lexos.com.br:1500";   #Nome do host
    $db       = "LexManager_GadelCampinas";   #Nome do banco de dados
    $user     = "user"; #Nome do usuário
    $password = "pass";   #Senha do usuário

        // Dados da tabela
    $tabela = "Clt_cadPontosFidelidade";    #Nome da tabela
    $cliente = "IdCliente"; #id do cliente
    $voucher = "IdPontos";
    $cliente2 = "9662";


    @mssql_connect($dbhost,$user,$password) or die("Não foi possível a conexão com o servidor!");
    @mssql_select_db("$db") or die("Não foi possível selecionar o banco de dados!");


 // Input into staff database
$query = "INSERT INTO $tabela (IdCliente, Pontos, Ativado, Data, IdPov)
          VALUES ($cliente2, -10, 1, GETDATE(), 10)              
          ";

$result = mssql_query($query) or die('Error querying MSSQL database');

//close to sql
//mssql_close($dbc);


echo $result['IdCliente'] . '- Código do Cliente<br />';
echo $result['IdPontos'] . '- Número do voucher do cliente<br />';
echo 'Thank you <br />';
echo 'Ponte Store';
?>

我遇到错误:

  

警告:mssql_query()[function.mssql-query]:message:无效的列名'IdCliente'。 (严重程度16)in   /home/storage/c/60/21/allantoledo/public_html/NovoApp/resgatar.php on   第27行

     

警告:mssql_query()[function.mssql-query]:常规SQL Server   错误:检查来自SQL Server(严重级16)的消息   /home/storage/c/60/21/allantoledo/public_html/NovoApp/resgatar.php on   第27行

     

警告:mssql_query()[function.mssql-query]:查询失败   /home/storage/c/60/21/allantoledo/public_html/NovoApp/resgatar.php on   第27行查询MSSQL数据库时出错

谢谢!

阿伦

1 个答案:

答案 0 :(得分:1)

期望文字值不是列名。例如,这可以(假设IDCliente不是数字字段):

INSERT INTO $tabela (IdCliente, $pontos, Ativado, Data, IdPov)
VALUES ('IdCliente', -10, 1, GETDATE(), 10)  

您需要传入IDCliente的实际值而不是列的名称。如果您需要从其他表中获取IDCliente的值,那么您的查询将类似于:

INSERT INTO $tabela (IdCliente, $pontos, Ativado, Data, IdPov)
SELECT IdCliente, -10, 1, GETDATE(), 10
FROM SomeTableName