$query = mysql_query($sql);
mysql_fetch_array($query, mysql_both【既有数字下标,也有字段名下标】)
                                           mysql_assoc【只有字段名下标】 
多表联接:
1. 内联接
                  左外联接
2.外联接: 右外联接
                  全联接
例:学生表 student(表名)      no  name  age  sex
       成绩表 chengji(表名)     sno  kno  score
       SELECT  s.*, c.*  FROM  student  AS  s, chengji  AS  c  WHERE  s.no = c.sno  AND  s.name = ‘张三‘; 
主键:能唯一区分某个记录的键
外键:在本表中不是主键,在另外一个表中是主键的键 
ER模型图
表与表之间的几种关系:
一对一
一对多
多对多 
mysql_affected_rows()    取得 insert  update  delete 之后,影响的行数
                                           不能得到select 查询的记录数
mysql_insert_id()    取得 inert 刚刚插入的记录的id值
mysql_num_rows()    返回结果集中行的数目。此命令仅对 SELECT 语句有效。要取得被 INSERT,UPDATE 或者 DELETE 查询所影                                        响到的行的数目,用 mysql_affected_rows()
例:
<?php
$db = mysql_connect("localhost", "user", "password");
mysql_select_db("database", $db);
$result = mysql_query("SELECT * FROM table1", $db);
$num_rows = mysql_num_rows($result);
echo "$num_rows Rows\n";
?> 
注意: 如果使用 mysql_unbuffered_query(),则直到结果集中的所有行都被提取后 mysql_num_rows() 才能返回正确的值
数据库操作步骤:
// 连接数据库
$db = mysql_connect("localhost", "root", "密码", "端口",...) or die("连接失败");
// 选择数据库
mysql_select_db("数据库名");
// 设置数据库编码
mysql_query("set names utf8");
原文:http://www.cnblogs.com/shuguoqing/p/5796986.html