我正在尝试将列插入表中,但是有一个错误,我无法弄清楚如何修复它。我的代码:
<?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数据库时出错
谢谢!
阿伦
答案 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