mysql update语句

前端学PHP之mysql扩展函数

孤者浪人 提交于 2020-03-02 17:18:00
前面的话   mysql由于其体积小、速度快、总体拥有成本低,尤其是具有开放源码这一特点,许多中小型网站为了减低网站总体拥有成本而选择了mysql作为网站数据库。而使用mysql数据库管理系统与php脚本语言相结合的数据库系统解决方案,正被越来越多的网站所采用,其中以LAMP(linux+apche+mysql+php)模式最为流行   PHP有标准的函数用来操作数据库,mysqli是PHP5中新加的,是对mysql扩展的改进。但由于历史遗留问题,好多老项目是在PHP4中使用mysql拓展开发的,如果在原有的项目上进行二次开发,都要求使用mysql拓展函数。如果是新设计的项目,推荐使用mysqli拓展或PDO技术。本文主要介绍PHP中的mysql拓展函数 总括   在PHP脚本中操作MySQL数据库的的几个步骤如下:   1、连接MySQL数据库服务器,并判断是否连接正确   2、选择数据库,并设置字符集(可选)   3、执行SQL命令   4、处理结果集   5、关闭数据库连接 连接MySQL数据库服务器,并判断是否连接正确 mysql_connect()   mysql_connect()函数用来打开一个到 MySQL 服务器的连接。如果成功则返回一个资源, 或者在失败时返回FALSE resource mysql_connect ([ string $server [,

Mysql基础

孤街醉人 提交于 2020-03-02 16:56:12
Mysql基础 连接和登录Mysql 自带mysql客户端连接: mysql –h 127.0.0.1 –P 3306 –u root –p123456 图形化界面管理工具连接:Navicat/SQLyag/phpMyAdmin/MySQLworkbench Mysql的数据类型 整数:int/tinyint/smallint/mediumint/integer/bigint 小数:flout/double/decimal 日期和时间:date(日期:YYYY-MM-DD)/time(时间:HH:ii:ss)/year(年份)/datetime(日期和时间混合:YYYY-MM-DD HH:ii:ss)/timestamp(时间戳,通常是一个字符序列,唯一的标识某一刻的时间,范围:1970—2037) 字符串:char(定长)/varchar(变长)/text(变长:tinytext/text/mediumtext/longtext) 二进制:binary/varbinary/bi/blob(tineyblob/blob/medumblob/longblob) Mysql程序常用命令 显示所有数据库:show databases; 选定默认数据库:use dbname; 显示默认数据库中的所有表:show tables; 放弃正在输入的命令:\c 显示命令清单:\h 退出mysql:

php操作mysql数据库

别等时光非礼了梦想. 提交于 2020-03-02 15:38:53
[php] <span style= "font-family:Arial,Helvetica,sans-serif">在php操作数据库过,会频繁对数据库进行各种操作,所以,php提供函数接口,很好的支持了对各种数据库的支持,包括MySql数据库。 php函数接口,事实上是对sql语句的分装</span> 1.数据库的连接 要使用数据库,首先需要连接数据库,链接命令为 [php] mysql_connect(servername, user, password); servername 为服务器名,可选项,默认为 localhost:3306; user 是用户名,可选,默认拥有服务器进程的用户名; pasword 规定登录所用的密码,可选,默认是""; [php] <?php $con=mysql( "localhost", "root", "password"); if( $con) { die( "couldn't connect!"); } //使用结束后,关闭链接 mysql_close( $con); ?> 另外可以用mysql_pconnect([host][:port][user][password]),此函数与mysql_connect函数功能基本相同,区别在于: 1. 当数据库操作结束后,由mysql_connect函数建立的连接将自动关闭, 而mysql

PHP之mysql笔记

倾然丶 夕夏残阳落幕 提交于 2020-03-02 15:31:47
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

7.3. 锁定事宜

回眸只為那壹抹淺笑 提交于 2020-03-02 11:35:16
7.3. 锁定事宜 7.3.1. 锁定方法 7.3.2. 表锁定事宜 7.3.1. 锁定方法 MySQL 5.1 支持对 MyISAM 和 MEMORY 表进行表级锁 定,对 BDB 表进行页级锁定,对 InnoDB 表进行行级锁定。 在许多情况下,可以根据培训猜测应用程序使用哪类锁定类型最好,但一般很难说出某个给出的锁类型就比另一个好。一切取决于应用程序,应用程序的不同部分可 能需要不同的锁类型。 为了确定是否想要使用行级锁定的存储引擎,应看看应用程序做什么并且混合使用什么样的选择和更新语句。例如,大多数 Web 应 用程序执行许多选择,而很少进行删除,只对关键字的值进行更新,并且只插入少量具体的表。基本 MySQL MyISAM 设置已经调节得很好。 在 MySQL 中对于使用表级锁定的存储引擎,表锁定时不会死锁的。这通过总是在一个查询开始时立即请求所有必要的锁定并且 总是以同样的顺序锁定表来管理。 对 WRITE , MySQL 使 用的表锁定方法原理如下: 如果在表上没有锁,在它上面放一个写锁。 否则,把锁定请求放在写锁定队列中。 对 READ , MySQL 使用的锁定方法 原理如下: 如果在表上没有写锁定,把一个读锁定放在它上面。 否则,把锁请求放在读锁定队列中。 当一个锁定被释放时,锁定可被写锁定队列中的线程得到,然后是读锁定队列中的线程。 这意味着

day62:mysql主从配置

人走茶凉 提交于 2020-03-02 10:50:19
1、主从介绍: mysql主从又叫Replication,AB两台机器复制,也就是说是AB两台机器做了主从后,在A机器上写数据,另一台B机器也会跟中写数据,两者数据实时同步: mysql主从是基于 binlog ,主上必须开启 binlog 才能进行主从:binlog是一个 二进制的日记文件 : mysql主从的过程步骤 : 1:主将更改操作记录(增删改)到 binlog 里: 2:从将主的 binlog事件 ( SQL语句 )同步到从本机并记录 relaylog 中: 3:从根据 relaylog 里面的语句按数据严格执行: 注释: 主从过程涉及到三个线程, 主(logdump线程) 从(I/O线程、SQL线程) 主上 有一个 线程(logdump) 用来和从的 I/O线程 传递binlog: 从上有两个线程: I/O线程 用来同步主的binlog至本机并生成 relaylog : SQL线程 用来把r elaylog里的sql语句 按数据执行: 附记: master主会把操作记录到binlog中,通过线程dumplog和从线程I/O线程传递binlog,从通过线程I/O收到binlog后至本机生成relaylog,并通过线程SQL来按顺序执行relaylog里的sql语句: 应用场景 : 1、 用于备份重要数据:(仅仅只作为备份):主机器宕机,从机器还能随时对web提供服务:

MySQL 连接的使用:语法及案例剖析、INNER JOIN、LEFT JOIN、RIGHT JOIN

纵饮孤独 提交于 2020-03-02 10:29:21
MySQL 连接的使用 在前几章节中,我们已经学会了如何在一张表中读取数据,这是相对简单的,但是在真正的应用中经常需要从多个数据表中读取数据。 本章节我们将向大家介绍如何使用 MySQL 的 JOIN 在两个或多个表中查询数据。 你可以在 SELECT, UPDATE 和 DELETE 语句中使用 Mysql 的 JOIN 来联合多表查询。 JOIN 按照功能大致分为如下三类: INNER JOIN(内连接,或等值连接) :获取两个表中字段匹配关系的记录。 LEFT JOIN(左连接): 获取左表所有记录,即使右表没有对应匹配的记录。 RIGHT JOIN(右连接): 与 LEFT JOIN 相反,用于获取右表所有记录,即使左表没有对应匹配的记录。 在命令提示符中使用 INNER JOIN 我们在RUNOOB数据库中有两张表 tcount_tbl 和 runoob_tbl。两张数据表数据如下: 实例 尝试以下实例: 测试实例数据 mysql > use RUNOOB ; Database changed mysql > SELECT * FROM tcount_tbl ; +---------------+--------------+ | runoob_author | runoob_count | +---------------+--------------+ | 菜鸟教程

Mysql锁的优化

不想你离开。 提交于 2020-03-02 10:05:36
获取锁等待情况 可以通过检查table_locks_waited和table_locks_immediate状态变量来分析系统上的表锁定争夺: mysql> show status like 'Table%'; +----------------------------+----------+ | Variable_name | Value | +----------------------------+----------+ | Table_locks_immediate | 105 | | Table_locks_waited | 3 | +----------------------------+----------+ 2 rows in set (0.00 sec) 可以通过检查Innodb_row_lock状态变量来分析系统上的行锁的争夺情况: mysql> show status like 'innodb_row_lock%'; +----------------------------------------+----------+ | Variable_name | Value | +----------------------------------------+----------+ | Innodb_row_lock_current_waits | 0 | |

MySql数据库基础

三世轮回 提交于 2020-03-02 10:04:07
1.数据库概述 数据库就是存储数据的仓库,其本质是一个文件系统,数据按照特定的格式将数据存储起来,用户可以对数据库中的数据进行增加,修改,删除及查询操作。 2.表数据 根据表字段所规定的数据类型,我们可以向其中填入一条条的数据,而表中的每条数据类似类的实例对象。表中的一行一行的信息我们称之为记录。 3.Mysql启动与登录  MySQL是一个需要账户名密码登录的数据库,登陆后使用,它提供了一个默认的root账号,使用安装时设置的密码即可登录。 4.SQL语句    l SQL分类: n 数据定义语言:简称DDL(Data Definition Language),用来定义数据库对象:数据库,表,列等。关键字:create,alter,drop等 n 数据操作语言:简称DML(Data Manipulation Language),用来对数据库中表的记录进行更新。关键字:insert,delete,update等 n 数据控制语言:简称DCL(Data Control Language),用来定义数据库的访问权限和安全级别,及创建用户。 n 数据查询语言:简称DQL(Data Query Language),用来查询数据库中表的记录。关键字:select,from,where等 5.通用语法    l SQL语句可以单行或多行书写,以分号结尾 l 可使用空格和缩进来增强语句的可读性

MySQL引擎

你离开我真会死。 提交于 2020-03-02 08:18:06
MySQL提供多种存储引擎,通过命令 show engines; 查看 查看当前默认的存储引擎 show variables like '%storage_engine%'; 查看某个表用了什么引擎 show create table 表名; MyISAM引擎: 没有提供对数据库事务的支持,也不支持行级锁和外键,因此当INSERT或UPDATE数据时即写操作需要锁定整个表。存储了表的行数,SELECT COUNT(*) FROM TABLE时,只需要直接读取已经保存好的值而不需要进行全表扫描,如果表的读操作远远多于写操作且不需要事务支持,那么MyISAM是个好选择。 InnoDB引擎: InnoDB是MySQL默认的引擎,提供对ACID事务的支持,并且实现SQL标准的四种隔离级别,提供行级锁和外键约束,它的设计目的是处理大容量数据库系统,在运行时,Innodb会在内存建立缓冲池,用于缓冲数据和索引。没有保存表的行数,当SELECT COUNT(*) FROM TABLE时,需要扫描全表。使用行级锁不是一定的,如果一个SQL语句不能确定要扫描的范围,InnoDB表同样会锁全表。 MyISAM引擎索引实现 B+树作为索引结构,叶节点的data域存放的是数据记录的地址。 主键索引原理图: 辅助索引: InnoDB引擎索引实现 同样使用B+树作为索引结构。MyISAM索引文件和数据是分离的