exec() method
#The exec() method returns the number of affected rows after execution. The syntax is as follows:
int PDO::exec(string statement)
Parametersstatement is the SQL statement to be executed. This method returns the number of rows affected when executing the query and is typically used in INSERT, DELETE and UPDATE statements.
For example:
$dbms='mysql';//数据库类型 $dbName='admin';//使用的数据库 $user='root';//数据库连接用户名 $pwd='password';//数据库连接密码 $host='localhost';//数据库主机名 $dsn="$dbms:host=$host;port=3306;dbname=$dbName"; try{ $pdo=new PDO($dsn,$user,$pwd);//初始化一个PDO对象,就是创建了数据库连接对象$pdo $query="insert into user(username,password) values('admin','123456')";//需要执行的sql语句 $res=$pdo->exec($query);//执行添加语句并返回受影响行数 echo "数据添加成功,受影响行数为: ".$res; }catch(Exception $e){ die("Error!:".$e->getMessage().'<br>'); }
The running result is:
数据添加成功,受影响行数为: 1
query() method
query() method is used to return the result set after executing the query. The syntax is as follows
PDOStatement PDO::query(string statement)
Parameter statement
is the SQL statement to be executed. It returns a PDOStatement object
##For example:
$dbms='mysql'; $dbName='admin'; $user='root'; $pwd='905407339'; $host='localhost'; $dsn="$dbms:host=$host;port=3306;dbname=$dbName"; try{ $pdo=new PDO($dsn,$user,$pwd); $query="select * from user"; $res=$pdo->query($query); print_r($res); }catch(Exception $e){ die("Error!:".$e->getMessage().'<br>'); }
##The running result is: PDOStatement
Object ( [queryString] => select * from user )
If you want to see the specific results of the query, you can pass The foreach statement completes the loop output
For example:
foreach($res as $val){ echo $val['username']."----".$val['password'].'<br>'; }
The running result is:
107lab----e10adc3949ba59abbe56e057f20f883e admin----123456
Note: If you want to see the detailed usage of foreach, please check: http:// www.php.cn/
query() and exec()
query可以实现所有exec的功能
For example:
运行结果为: 注: 1、query和exec都可以执行所有的sql语句,只是返回值不同而已。 2、query可以实现所有exec的功能。 3、当把select语句应用到 exec 时,总是返回 0 预处理语句----prepare()语句和execute()语句 预处理语句包括prepare()和execute()两种方法。首先,通过prepare()方法做查询准备工作,然后通过execute()方法执行查询,并且还可以通过bindParam()方法来绑定参数给execute()方法,语法如下: 例如: 在PDO中通过预处理语句prepare()和execute()执行SQL查询语句,并且应用while()语句和fetch()方法完成数据的循环输出 运行结果为: 关于PDO中获取结果集的方法正在创作阶段,敬请期待。 以上就是PDO中执行SQL语句的内容,更多相关内容请关注PHP中文网(www.php.cn)!$dbms='mysql';//数据库类型
$dbName='admin';//使用的数据库
$user='root';//数据库连接用户名
$pwd='905407339';//数据库连接密码
$host='localhost';//数据库主机名
$dsn="$dbms:host=$host;port=3306;dbname=$dbName";
try{
$pdo=new PDO($dsn,$user,$pwd);//初始化一个PDO对象,就是创建了数据库连接对象$pdo
$query="insert into user(username,password) values('admin','123456')";//需要执行的sql语句
$res=$pdo->query($query);//执行添加语句并返回受影响行数
echo "数据添加成功,受影响行数为: ".$res->rowCount();
}catch(Exception $e){
die("Error!:".$e->getMessage().'<br>');
}
数据添加成功,受影响行数为: 1
PDOStatement
PDO::prepare(string statement[,array driver_options])
bool
PDOStatement::execute([array input_parameters])
$dbms='mysql';//数据库类型
$dbName='admin';//使用的数据库
$user='root';//数据库连接用户名
$pwd='905407339';//数据库连接密码
$host='localhost';//数据库主机名
$dsn="$dbms:host=$host;port=3306;dbname=$dbName";
try{
$pdo=new PDO($dsn,$user,$pwd);//初始化一个PDO对象,就是创建了数据库连接对象$pdo
$query="select * from user";//需要执行的sql语句
$res=$pdo->prepare($query);//准备查询语句
$res->execute();
while($result=$res->fetch(PDO::FETCH_ASSOC)){
echo $result['id']." ".$result['username']." ".$result['password'].'<br>';
}
}catch(Exception $e){
die("Error!:".$e->getMessage().'<br>');
}
1
107lab e10adc3949ba59abbe56e057f20f883e
4 admin 123456
5 admin 123456