新しいレコードをデータベースに挿入しようとすると問題が発生します。私が考える問題は、ビットフィールドです。値を代入すると、私はこのエラーになります:ビットデータ型のフィールドにデータを挿入するにはどうすればよいですか?
Failed: Array ([0] => Array ([0] => 22018 [SQLSTATE] => 22018 [1]
=> 245 [code] => 245 [2] => [Microsoft][SQL Server Native Client 10.0]
[SQL Server]Conversion failed when converting the varchar value ' 1 '
to data type bit. [message] => [Microsoft][SQL Server Native Client 10.0]
[SQL Server]Conversion failed when converting the varchar value ' 1 ' to
data type bit.))
私はそれをfalseに変更します。私は自分のコードのいくつかを表示します。私はこの変数に絞り込んだので、ほとんどを切り捨てました。
$active = True;
ここに私の挿入クエリです。
$sqlInsert = "INSERT INTO customers(
customerID,
registeredDate,
givenName,
familyName,
email,
password,
phone,
mobile,
property,
street,
locality,
town,
area,
postalCode,
active
)
VALUES(" .
$newUser . "," .
$date . ", ' " .
$given . " ', ' " .
$family . " ', ' " .
$email . " ', ' " .
$pwd . " ', ' " .
$phone . " ', ' " .
$mob . " ', ' " .
$property . " ', ' " .
$street . " ', ' " .
$locality . " ' , ' " .
$town . " ', ' " .
$area . " ', ' " .
$postalcode . " ', ' " .
$active . " ')";
$stmtInsert = sqlsrv_query($conn, $sqlInsert);
なぜ、誤って動作していたのですか? –