2011-07-11 13 views
0

結果の挿入を検出しようとしています。mssql_queryは挿入エラーを検出できますか?

INSERT INTO table (1,2,'t')を挿入しようとすると、テーブルの3番目の列が十進数型であるために挿入エラーが発生しますが、mssql_queryがtrueを返します。

私がINSET INTO table (1,2,'t')でテストしたとき、これは偽のように返されます。

最初のステートメントがtrueを返すのはなぜですか?それは本当ではないエラーであることをどのように確認できますか?

+0

このsql-serverはありますか?またはMySQL? MySQLの場合は、mysql_error()を使用して、mysql_query()から返されたエラーを表示することができます。 – Dirk

+0

実際に行が最初の文に挿入されますか? –

+0

mssql_queryはsqlserver用です:)私は本当に欲求不満です。どうすればいいのですか?WTH ps.noレコードが挿入されました – thReality

答えて

0

正しい構文は次のとおりです。

insert into table_name (column_name1, column_name2, ..) 
VALUES (value_of_column1, value_of_column2, ..) 

すでに一部を発注知っているように必要な、しかし、私は非常にあなたが最初の注文を行うと、それに値を与えることを示唆されていません。

mysql_queryはエラー時にfalseを返し、mysql_error関数を使用してエラーを取得できます。

そして、あなたのこれを覚えておくあなたがvarchar型/文字/日付/日時の種類の列を充填しているときにのみ引用して値を囲む必要があります。..ブール、整数、小数などの

他のタイプと..見積もりなしで提供する必要があります。

+0

私のコードでは完全な列の割り当てを使用していますが、これは簡単なデモンストレーションです。 ここでのポイントはmssql_query()がデータ型エラーを失敗挿入として認識していないことです – thReality

関連する問題