读书人

PHP与MySQL联接及SQL语言基本语法

发布时间: 2012-09-04 14:19:30 作者: rapoo

PHP与MySQL连接及SQL语言基本语法

学习PHP之SQL语法

数据库中的常用SQL语句

创建一个简单的数据库

创建一个数据库命令:CREATE TABLE

删除一个数据库命令:DROP TABLE

修改一个字段名称:RENAME TABLE `原字段` TO `新字段`

删除一个字段:ALTER TABLE `表` DROP `原字段`

插入一个字段:ALTER TABLE `表` ADD `新字段`… AFTER `原字段`

举例:

CREATE TABLE `test` (

`id` int(10) NOT NULL auto_increment,

`uid` varchar(10) NOT NULL default '0',

`regdate` date NOT NULL,

`remark` text NULL,

PRIMARYKEY (`id`)

)

1、SELECT查询语句和条件语句

SELECT 查询字段 FROM表名 WHERE条件

查询字段:可以使用通配符*、字段名、字段别名

表名:数据库.表名 表名

常用条件: =等于、<>不等于、in包含、 not in 不包含、 like匹配

BETWEEN 在范围 、 not BETWEEN 不在范围 <、>

条件运算: and、 or 、 ( )

分组语句:group by字段(语句最后 order之前)

排序语句:order by字段,字段 ASC / DESC(语句最后 limit之前)

指针查询:limit初始值,结束值(语句最后)

计算:

COUNT(*) 统计函数

MAX(*) 最大值函数

MIN (*) 最小值函数

AVG(*) 平均值函数

SUM(*) 累计值函数

2、INSERT插入语句

insert into表名 (字段…,…) values(值…,…)

insert into表名 values(值…,…)

3、UPDATE更新语句

UPDATE表名 SET字段 =值 WHERE条件 limit

常用条件: =等于、<>不等于、in包含、 not in 不包含、 like匹配

BETWEEN 在范围 、 not BETWEEN 不在范围

条件预算: and、 or 、 ( )

4、DELETE删除语句

DELETE FROM 表名 WHERE条件 limit

常用条件: =等于、<>不等于、in包含、 not in 不包含、 like匹配

BETWEEN 在范围 、 not BETWEEN 不在范围

条件预算: and、 or 、 ( )

PHP与MySQL的连接

1、PHP与mysql建立链接

php.ini 加载mysql组件:

extension=php_mysql.dll 前的; 去掉

extension_dir = " " 路径是否正确

PHP链接mysql函数

mysql_connect:开启 MySQL 链接

mysql_select_db:打开一个数据库

@和or die隐藏错误和条件显示

mysql_connect("主机", "用户名", "密码")

mysql_select_db("打开数据库",连接标识符);

代码举例:

$conFlag=@mysql_connect("localhost","root","");

if ($conFlag){

echo"连接成功!";

}else{

echo"连接错误!";

}

$Flag=@mysql_select_db("newdb");

if ($Flag){

echo"<br>"."newdb数据库打开成功!";

}

2、如何去执行一个SQL语句

mysql_query(SQL语句 ,连接标识符);

说明:mysql_query用来根据连接标识符向该数据库服务器的当前数据库发送查询,如果连接标识符默认,则默认为是上一次打开的连接。

返回值:成功后返回一个结果标识符,失败时返回false。

代码举例:

$sql="INSERT INTO test VALUES('','zhb',now(),'postG')";

mysql_query("set names 'GB2312'");//解决中文乱码

mysql_query($sql);

3、SQL查询语句的特殊性

注意:对于除查询以外的操作,不需要返回数据。而查询需要返回数据。

mysql_query执行SQL查询语句,用mysql_fetch_row或mysql_fetch_array获取查询的结果。

格式:mysql_fetch_row(result);

说明:mysql_fetch_row用来查询结果的一行保存至数组,该数组下标从0开始,每一个数组元素对应一个域。通过循环,可以将查询结果全部获得。

格式:mysql_fetch_array(result);

说明:mysql_fetch_array和mysql_fetch_row功能基本相同,只不过它除了可以用从0开始的偏移量作索引,还可以用域名作索引。值返回下一行的所有域值,并将其保存至一个数组中,没有行时返回false。

代码举例:

$sql="SELECT * FROM `test`";

$result=mysql_query($sql);

echo "<br>";

while($result_array=mysql_fetch_row($result)){

print_r($result_array);

echo"<br>";

}

4、其他常用Mysql函数介绍

mysql_num_rows 用于计算查询结果中所得行的数目

mysql_insert_id传回最后一次使用 INSERT指令的 ID。

mysql_tablename取得数据库名称

mysql_error 返回错误信息

mysql_close 关闭 MySQL链接

附录:

访问MYSQL的几种途径

1、使用工具MYSQL官方的工具访问:MySQLAdministrator tool

2、使用第三方工具访问:mysqlexec、 mysql连接器

3、使用WEB方式访问:phpMyAdmin(最常见)(http://localhost/phpmyadmin/)

数据库中常用字段类型

整数型:TINYINT,SMALLINT,INT,BIGINT

小数型:FLOAT,DOUBLE,DECIMAL(M,D)

字符型:CHAR,VARCHAR

日期型:DATETIME,DATE,TIMESTAMP

备注型:TINYTEXT,TEXT ,LONGTEXT

参考:PHP100视频 8~10

读书人网 >Mysql

热点推荐