SQL Server のデータベース テーブルにデータを挿入しようとしています。データベースに接続できますが、挿入中に次のエラーが発生します。
Errors: Array ( [0] => Array ( [0] => 42S02 [SQLSTATE] => 42S02 [1] => 208 [code] => 208 [2] => [Microsoft][SQL Server Native Client 11.0][SQL Server]Invalid object name 'dbo.Salesforce'. [message] => [Microsoft][SQL Server Native Client 11.0][SQL Server]Invalid object name 'dbo.Salesforce'. ) )
簡単にするために、テーブルに挿入する必要がある値を (フォーム送信で選択する代わりに) ハードコーディングしました。
/*Insert data.*/
$insertSql = "INSERT INTO dbo.Salesforce (ID,Name, Company, Email, Phone, Assets, Comm, Capability)
VALUES (?,?,?,?,?,?,?,?)";
/* Construct the parameter array. */
$ID = 5;
$Name = "Sarah";
$Company = "Track24";
$Email = "xxx@live.com";
$Phone = "+xxxxxx";
$Assets = "Vehicles";
$Comm = "GSM";
$Capability = "IVMS";
$params1 = array($ID,
$Name,
$Company,
$Email,
$Phone,
$Assets,
$Comm,
$Capability);
$stmt = sqlsrv_query($conn, $insertSql, $params1);
if($stmt === false)
{
die('Errors: ' . print_r(sqlsrv_errors(), TRUE));
}
else
{
echo '<br clear="all"><label style="color:red;">Thank you for your details.</label>';
}
上記で呼び出されるフィールドは、テーブルのすべてのフィールドではありません。他にもいくつかありますが、null
値が許可されているため、含めませんでした。このエラーをグーグルで検索しましたが、実際の意味と問題がどこにあるのか理解できません! ポインタはありますか?
編集 1: 正常に接続:
/* Specify the server and connection string attributes. */
$serverName = "xxxx-PC\SQLExpress";
$connectionOptions = array("Database"=>"Salesforce");
$conn = sqlsrv_connect($serverName, $connectionOptions);
if($conn === false)
{
die(print_r(sqlsrv_errors(), true));
}