PHP は mssql のレコードを削除できません
mssql のテーブルの構造は次のとおりです:
hr_id は mssql によって生成された uniqueidentifier 形式の文字列であるため、php を使用してこの文字列を読み取ることはできません。 mssql ここで、上の図の最初の値を削除したいのですが、[削除] をクリックしてもレコードは削除できません:
前のページのリンクを削除するコードの一部は次のとおりです: //== ==== ==================================
echo "
削除変更 | ";
=============================== ==== ========
del ステートメントは次のとおりです:
require_once("c_class.php");
$db=new msSQL($db_IP,$ db_user,$db_sa,$db_dbName,"conn");
//mssql_query("SET NAMES 'utf-8'")
//mssql_query('SET NAMES GB2312'); = "から削除します。$tablea。" where recv_time = ".urldecode($_GET[recv_time]);
if($del){
echo "<script>alert( '成功');history .back();</script>";
}else{
echo "<script>alert('fales');history.back();</script>";
}
=== ===============================
現在、削除できない問題が発生しています。
どうやって解決しますか? ?
また、余談ですが、PHPの操作(変更/削除など)でレコードを1つだけ指定するにはどうすればよいでしょうか? mysqlではsqlステートメントのlimitを使って制限をかけることができますが、mssqlにはsqlステートメントを制限するためのこのlimitパラメータがないようです mssqlを動作させるためにphpでsqlステートメントを書くにはどうすればよいですか? ?
ディスカッションへの返信 (解決策)
$sql = "delete from ".$tablea." where recv_time = '".urldecode($_GET[recv_time])."'";
ログイン後にコピー
には一重引用符がありません。
修正後も同じ状態であり、記録を削除できません。
修正後も同じ状態であり、記録を削除できません。
$sql を出力して見てください
エコーされた $sql ステートメントは次のとおりです:
delete from hr_atd_recv where recv_time = '2013-03-27 17:44:00'
mssql で正しく実行できます。クエリアナライザー。
何らかの理由で、php を介して実行できません。気絶! !
自分で気づいたんですが、1階で間違った機能を使ってしまいました。 mysql_query は mssql_query と書くべきです
不注意すぎます。