ホームページ  >  記事  >  バックエンド開発  >  mysql のバージョンが高すぎると、この形式はサポートされなくなりますか?何をするか

mysql のバージョンが高すぎると、この形式はサポートされなくなりますか?何をするか

WBOY
WBOYオリジナル
2016-06-13 13:23:43790ブラウズ

mysql のバージョンが高すぎると、この形式はサポートされなくなりますか?
mysqlのバージョンが高すぎると、$tb (テーブル) set $var (フィールド = フィールド値) への挿入形式がサポートされません?
親クラス:
class mysql{
public $host; // ホスト
public $db; // データベース
public $user; /Password
public $set; //Encoding
function __construct($m,$a,$b,$n,$c){
//function fun($m,$a,$ b) ,$n,$c){
$this->host=$m;
$this->user=$a;
$this->pass=$b;
$this->db=$n;
$this->set=$c;
$this->conn();
}
//データベースをリンク
関数conn(){
mysql_connect($this->host,$this->user,$this->pass)or die($this->log_sn());
mysql_select_db($ this ->db)or die($this->log_sn("データベース リンク エラー!"));
mysql_query("setnames.'".$this->set."'");
}
// SQL ステートメントを実行します
function query($n){
return mysql_query($n);
}
function f($q,$f=1){
if($f){
return mysql_fetch_array($q);
}else{
return mysql_fetch_row($q);
}
}
//ID を取得
function id_in(){
return mysql_insert_id();
}
//データベースログを作成します
function log_sn($son=""){
$son="##" 。 date("Y-m-d H:i:s")."##".mysql_error().$son."rn";
$fp=fopen(date(ymd).".txt", a); 🎜> fwrite($fp,$son);
fclose($fp);
}
}

サブクラス:
class act extends mysql{
function insert( $tb,$var,$state=0){
$sql="".$tb."set".$var;
if($state){
echo $sql ;
}else{
mysql_query($sql);
//return $this->id_in();
}
}

ページ:
include( 'mysql.class.php');
include('act.class.php');
$insert=new act("localhost","root","","news"," gbk" );
$insert->insert("ニュース","id=null,title='恥知らず',author='張',tid='333',pic='a.jpg' ,sort=' 2',hit='0',adtime=130229197,uptime=1302292988,del='N'");


ページの実行後、データベースは正常に挿入されず、エラーも発生しません。と報告されていますが、出力された SQL ステートメントはデータベースで使用できます。これは mysql のバージョンに問題があるのでしょうか。それとも私のコードに何か問題があるのでしょうか?


-----解決策---------
パラメータ「news」を渡します。 "id=null、title='恥知らず'、author='張'、tid='333'、pic='a.jpg'、sort='2'、hit='0'、adtime=130229197、uptime =1302292988 ,del='N'"
SQL 文字列を構築します
$sql="insert into".$tb."set".$var;
結果は次のようになります:
insert intonewssetid =null,title= ……
全部くっついてるけど大丈夫かな?

また、ID が自動インクリメントフィールドである場合は、それを書き込まないでください


------解決策---------
テーブルの挿入操作: INSERT INTO TABLE ( field) VALUES(field_value);
テーブルを変更する操作:
UPDATE TABLE SET field=new_value WHERE field=field_value;

------解決策---------
「しかし、出力された SQL ステートメントはデータベースにあります。
何が出力されますか?

マニュアルによると、挿入... 設定... 最新の 5.6 はサポートしていますが、問題ありません
だから、まだありますあなたをチェックするためのプログラム

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。