PHP之mysql笔记
1:在php中提供了两个用于连接MySQL数据库服务器的函数。
(1)int mysql_connect(hostname[:port][:/path/to/socket],user,pass).
(2)Int mysql_pconnect(hostname[:port][:/path/to/socket],user,pass).
这两个连接函数的区别:
a:使用mysql_pconnect( )建立的是一种“牢固的”(persistent)连接,即在对数据库的操作结束后,已建的连接并不会被断开,而是一直保留着,即使使用mysql_close()也不能终止连接。而mysql_connect()会在结束了对数据库的操作后,自动的关闭已建立的连接。
b:使用mysql_pconnect()时,系统总是先检查是否已经存在使用了同样的主机名、用户名和密码的“牢固连接”,如果有则直接返回该连接的连接号,而不会建立新连接。而在使用mysql_connect()时,如果用户再次使用相同的参数建立连接,系统不会建立新的连接,而是返回旧的连接号。
2:PHP 对 MySQL 数据库的库级操作共有 3 种, 它 们主要是:创建数据库、选择数据库和删除数据库。这 3 个操作分别由 3 个函数来完成,它们是:
int mysql_create_db(string database_name, int [lin k_identifier ] );
int mysql_select_db(string database_name, int [link_ identifier ] );
int mysql_drop_db(string database_name, int [lin k_identifier ] );
在函数的参数表中, “ database_name ” 是被操作的数据库的名字; “ lin k_idenifier”由 mysql_connect( ) 或 mysql_pconnect( ) 返回的连接标识号,如果不指定连接标识号,系统会试图使用上次连接的连接号。
3:提交查询请求。
(1):int mysql_query( string query, int [link_identifier ] );
(2):int mysql_db_query( string database, string query, int [link _identif ier ] );
两个函数的返回值都与传来的具体请求有关。如果 query 是一个 SELECT 语句,语句又被成功执行 ,则返回一个结果标识符 , 如果语句执行有误则返回 FALSE 。 如果 query是一个 INSERT 、 DELETE 、 REPLACE 或 UPDATE 等其他 SQL 语句 ,则返回一个 boolean类型的值。
案例:
<?
$conn=mysql_connect("localhost","root","mysqladmin");
mysql_select_db("bbs",$conn);
mysql_query("set names 'GBK'");//防止中文乱码
$sql="insert into user(name) values('五天')";
mysql_query($sql);
echo "插入数据成功!";
?>
4 :获取查询结果中的数据。
string mysql_result( integer result , integer row,mixed [field] ) ;
array mysql_fetch_row(integer result ) ;
array mysql_fetch_array( integer result , integer [result_ type] ) ;
object mysql_fetch_object( integer result , integer [result_ type] ) ;
案例1:
<?
$conn=mysql_connect("localhost","root","mysqladmin");
mysql_select_db("bbs",$conn);
mysql_query("set names 'GBK'");//防止中文乱码
$sql="select * from user";
$result=mysql_query($sql);
while($row=mysql_fetch_array($result)){
echo $row[id]."==>".$row[name]."<br>";
}
?>
案例2:
<?
$conn=mysql_connect("localhost","root","mysqladmin");
mysql_select_db("bbs",$conn);
mysql_query("set names 'GBK'");//防止中文乱码
$sql="select * from user";
$result=mysql_query($sql);
while($row=mysql_fetch_row($result)){
echo $row[0]."==>".$row[1]."<br>";
}
?>
案例3:
<?
$conn=mysql_connect("localhost","root","mysqladmin");
mysql_select_db("bbs",$conn);
mysql_query("set names 'GBK'");//防止中文乱码
$sql="select * from user";
$result=mysql_query($sql);
while($row=mysql_fetch_object($result)){
echo $row->id."==>".$row->name."<br>";
}
?>
5:获取查询结果中的数目信息。
integer mysql_num_fields ( integer resul t) ;
integer mysql_num_rows ( integer resul t) ;
这两个函数分别获得结果中字段的数目和行数。参数 result 是由 mysql_query( ) 或mysql_db _query( ) 返回的一个结果标识符。
案例:
<?
$conn=mysql_connect("localhost","root","mysqladmin");
mysql_select_db("bbs",$conn);
mysql_query("set names 'GBK'");//防止中文乱码
$sql="select * from user";
$result=mysql_query($sql);
echo "fields:".mysql_num_fields($result)."<br>";
echo "rows:".mysql_num_rows($result);
?>
或者:
$sql="select count(*) from user";
$result=mysql_query($sql);
if($row=mysql_fetch_row($result)){
echo $row[0];
}
6:数据库连接异常处理。
<?
$conn=@mysql_connect("localhost","root","mysqladmin") or
die("Sorry,Unable to connect MySQL Server.");
$db=@mysql_select_db("bbs",$conn) or
die("Sorry,Unable to select database bbs.");
mysql_query("set names 'GBK'");
?>
PHP之mysql笔记的更多相关文章
- MySQL笔记汇总
[目录] MySQL笔记汇总 一.mysql简介 数据简介 结构化查询语言 二.mysql命令行操作 三.数据库(表)更改 表相关 字段相关 索引相关 表引擎操作 四.数据库类型 数字型 字符串型 日 ...
- 涂抹mysql笔记-数据库中的权限体系
涂抹mysql笔记-数据库中的权限体系<>能不能连接,主机名是否匹配.登陆使用的用户名和密码是否正确.mysql验证用户需要检查3项值:用户名.密码和主机来源(user.password. ...
- centos7.2下安装Mysql笔记
centos7.2下安装Mysql笔记 安装 MySQL 适用于 CentOS 7.0 或以后版本: yum install mariadb mariadb-server 适用于 CentOS 6.8 ...
- MySQL笔记(六)游标练习
23.3.1 Trigger Syntax and Examples 意义不明的几道练习,留着备用. 感觉不好写,而且难以调试..不知道以后会不会有实际的应用场景. 环境:MySQL 笔记(三)由 t ...
- mysql 笔记(一)
mysql 笔记 预留 mysql> use mysql; mysql> grant all privileges on *.* to root@'%' identified by &q ...
- 【MySQL笔记】SQL语言四大类语言
SQL语言共分为四大类:数据查询语言DQL,数据操纵语言DML,数据定义语言DDL,数据控制语言DCL. 1. 数据查询语言DQL 数据查询语言DQL基本结构是由SELECT子句,FROM子句, ...
- Mysql 笔记二
Mysql 笔记二 Mysql 笔记二 Table of Contents 1. 前言 2. Master Thread 工作方式 2.1. 主循环(loop) 2.2. 后台循(backgroup ...
- 深入浅出mysql笔记---1、mysql下载安装
深入浅出mysql笔记---1.mysql下载安装 一.总结 一句话总结: linux下rpm安装即可 1.linux的wget命令作用? 下载文件的工具:比如wget http://cn.wordp ...
- 深入浅出mysql笔记---0、序
深入浅出mysql笔记---0.序 一.总结 一句话总结: 心得:买书之前建议先找找电子书,纸质书太难带了 1.开源作用? 开源对mysql的发展至关重要 2.mysql在2002年就全面支持了事务, ...
- 最全mysql笔记整理
mysql笔记整理 作者:python技术人 博客:https://www.cnblogs.com/lpdeboke Windows服务 -- 启动MySQL net start mysql -- 创 ...
随机推荐
- Aggregating tests in suites
我们可以将来自不同类的test组成一个test suite.在JUnit 3.8.x我们使用 static Test suite()方法,但是在JUnit4我们使用在类前面加上注释 @RunWith( ...
- Java 8 中新的 Date 和 Time 类入门详解
这篇文章主要是java8中新的Date和Time API的实战.新的Date和Time类是java开发者社区千呼万唤始出来的.Java8 之前存在的Date类一直都受人诟病,很多人都会选择使用第三方的 ...
- Lecture Halls
Lecture Halls (会议安排) 时间限制(普通/Java):1000MS/10000MS 运行内存限制:65536KByte 总提交: 38 测试通过: 2 ...
- [每日一题] 11gOCP 1z0-052 :2013-09-2 ADDM(Automatic Database Diagnostic Monitor)...................A28
转载请注明出处:http://blog.csdn.net/guoyjoe/article/details/10951207 正确答案:BC AWR简称Automatic Workload Reposi ...
- ViewPager 详解(一)---基本入门
前言:这两天研究研究ViewPager滚动功能,现在很多的app都有用到这个功能,我们的大虾米也有这个模块.要研究就彻底的研究研究,我从不满足于一个功能只是简单的应用,要学就学的彻底,所以我打算将Vi ...
- JAVA实现AES和MD5加密
package test; import java.io.UnsupportedEncodingException; import java.security.InvalidKeyException; ...
- GCC编译选项
一.看例子分析gcc 的编译选项 gcc -o hello hello.c -I /home/hello/include -L /home/hello/lib -lworld 1.-I /home/h ...
- Android - Broadcast机制
以下资料摘录整理自老罗的Android之旅博客,是对老罗的博客关于Android底层原理的一个抽象的知识概括总结(如有错误欢迎指出)(侵删):http://blog.csdn.net/luosheng ...
- 使用socket实现聊天功能
public class Service { //服务器 public static void main(String[] args) { ServerSocket serverSocket=null ...
- String[]和ArrayList和LinkedList区别
String[]和ArrayList和LinkedList区别 参考文档如下: http://www.blogjava.net/flysky19/articles/92775.html http:// ...