PHP访问数据库
1.原生mysql方式
<?php
//最原生态的访问方式,不过SQL注入是个麻烦事
$con = mysql_connect("localhost","root","sa123456");
if($con)
{
mysql_select_db("dedecms");
mysql_query("set names gbk");//设置数据访问编码,防止乱码
$rs = mysql_query("select * from dede_area",$con);
#var_dump(mysql_fetch_array($rs)); //同时提供数字索引与文本索引两种访问方式 /*while($row = mysql_fetch_row($rs))
{
var_dump($row);
}*/
#var_dump( mysql_fetch_($rs) );
#mysql_fetch_assoc($result)
while($row = mysql_fetch_assoc($rs))//只提供文本索引访问数据
{
#var_dump($row);
echo $row['name']."<br/>";
}
}
mysql_close($con);
?>
2.优化过的mysql数据库访问方式,mysqli
<?php
//mysqli的访问方式,更加OO且安全性和性能都有提升,参数的方式可防止SQL注入
$mysqli = new mysqli("localhost","root","sa123456","phpdb");
$mysqli->query("set names gbk");
$sql = "insert into article(title,content,createBy,createTime) values(?,?,?,?)";
$stmt = $mysqli->prepare($sql);
$stmt->bind_param("ssss", $title,$content,$createBy,$createTime);
$title = "hello!!!";
$content = "这里是新闻的内容";
$createBy = "admin";
$createTime = date('Y-m-d H:i:s');
$stmt->execute();
$stmt->close();
$mysqli->close();
?>
3.通用数据库访问方式,pdo
<?php
try
{
//pdo方式访问数据库,数据访问方式抽象到了更高层次,可支持灵活的切换为不同类型数据库
$dsn = "mysql:host=localhost;dbname=dedecms";
$pdo = new PDO($dsn, "root", "sa123456");
}
catch (PDOException $e)
{
echo "Failed to get DB handle: " . $e->getMessage() . "\n";
exit;
}
$pdo->query("set names gbk");
$query = $pdo->prepare("select * FROM dede_area");
$query->execute(); for($i=0; $row = $query->fetch(); $i++){
echo $i." - ".$row['name']."<br/>";
} ?>
PHP访问数据库的更多相关文章
- C#使用ADO.NET访问数据库(一)
博主好久没更新博客了,最近有点忙(打麻将0.0..),今天更新一篇C#的,我还是想坚持更新博客,分享一下自己的心得,闲话少说,开始正题~~ ADO.NET概述:ADO.NET的作用在于他是客户端访问服 ...
- Android 异步任务,通过PHP访问数据库,多线程,线程间通讯
文章列表MainActivity.java package com.eric.asynctask; import java.io.IOException; import java.util.Array ...
- ADO.NET 访问数据库
对数据库的访问时各种数据库应用程序开发的核心技术,.NET框架中提出的ADO.NET技术为应用程序的开发提供了一致的接口,增强了程序的可移植性和可扩展性. a:使用链接对象Connection连接数据 ...
- 如何通过JDBC访问数据库
Java数据库连接(JDBC)用与在Java程序中实现数据库操作功能,它提供了执行SQL语句.访问各种数据库的方法,并为各种不同的数据库提供统一的操作接口,java.sql包中包含了JDBC操作数据库 ...
- (转)发布Silverlight+WCF程序到IIS后,客户端访问数据库失败的解决方案
转自url:http://greatverve.cnblogs.com/archive/2011/11/30/silverlight-wcf-pub.html 我们在编写Silverlight程序时, ...
- 在 Mac OS X 上创建的 .NET 命令行程序访问数据库 (使用Entity Framework 7 )
var appInsights=window.appInsights||function(config){ function r(config){t[config]=function(){var i= ...
- Entity FrameWork 中使用Lambda访问数据库性能优化
在使用Entity Framework 访问数据库时,我们经常使用Lambda表达式,但是如果不小心的话,很容易就掉到坑里了.比如下面的例子:用Lambda访问MSSqlServer中的NewsInf ...
- sqlserver 服务器主体 无法在当前安全上下文下访问数据库
今天使用sqlserver,发现了一个问题,就是使用 insert into 数据库名.dbo.表名(字段) values(值) 这样语句的时候,会返回错误: sqlserver 服务器主体 无法在当 ...
- IOS 使用FMDB多线程访问数据库 及databaseislocked的问题
原理:文件数据库sqlite,同一时刻允许多个进程/线程读,但同一时刻只允许一个线程写.在操行写操作时,数据库文件被琐定,此时任何其他读/写操作都被阻塞,如果阻塞超过5秒钟(默认是5秒,能过重新编译s ...
随机推荐
- python迭代器与生成器
1.迭代器 iterator 迭代器是一种对象类型!可以由生成器生成! 迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束.迭代器的一大优点是不要求事先准备好整个迭代过程中所有的元素.迭 ...
- iMac 重装系统
iMac重装系统相当简单.开机的时候按下option键选择恢复系统或者在开机前按下 command+R然后按开机键松开同样会进入系统选择界面: 当中有 4 个选项:Restore From Time ...
- webForm练习1(地区导航)
使用LINQ TO SQL类连接数据库. create database mydb go use mydb go CREATE TABLE [dbo].[ChinaStates] ( ) COLLAT ...
- gulp-htmlmin压缩html
通过一条命令用Npm安装gulp-htmlmin: npm install gulp-htmlmin --save-dev 安装完毕后,打开gulpfile.js文件,我们里面编写一个task用来专门 ...
- tomcat各种问题汇总
1. 让Tomcat支持中文路径名和中文文件名 因为内置get协议中的URL编码都是ISO-8859-1,所以需要我们强制编码,在tomcat/conf/Server.xml中添加URIEncodin ...
- Visual Studio VS2010统计代码行数(转载)
本文转自:http://blog.csdn.net/zhouworld16/article/details/9292851 在网上看到别人用的方法: 按CTRL+SHIFT+F (Find in fi ...
- Redis 软件和配置
Redis 下载 1.通过CMD命令进入redis 文件目录 2.运行[redis-server redis.windows.conf]
- ContentProvider 增删改查通讯录
一.通讯录应用介绍 通讯录应用是Android自带的应用程序,我们看到此应用的时候,可能只认为这是一个应用,用数据库存储数据,但是实际上不是这样的. 通讯录是ContentProvider的应用,通讯 ...
- Python学习笔记- Python threading模块
Python threading模块 直接调用 # !/usr/bin/env python # -*- coding:utf-8 -*- import threading import time d ...
- Web服务器Nginx多方位优化策略
标签:性能 Web 架构 Nginx 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://dongsong.blog.51cto.co ...