PHP MySQL数据库一

一.Web数据库概述

现在,我们已经熟悉了PHP的基础知识,这是我们想暂时离开PHP一章,来重点介绍一下关系型数据库,让大家了解数据库比文件储存的有点。这些优点包括:

1.关系型数据库比普通文件的数据访问速度更快。

2.关系型数据库更容易查阅并提取满足特定条件的数据。

3.关系型数据库更具有专门的内置机制处理并发访问,作为程序员,不需要为此担心。

4.关系型数据库可以提供对数据的随即访问。

5.关系型数据库具有内置的权限系统。

关系数据库的概念

至今为止,关系数据库是最常用的数据库类型。在关系代数方面,它们具有很好的理论基础。当使用关系数据库的时候,并不需要了解关系理论(这是一件好事),但是还是需要理解一些关于数据库的基本概念。

1)表格

关系数据库由关系组成,这些关系通常称为表格。顾名思义,一个关系就是一个数据的表格。电子数据表就是一种表格。


编号


姓名


地址


电话


1


周杰伦


台湾高雄


0323839233


2


陈道明


大陆上海


0212324534


3


李炎恢


大陆盐城


0152343434

2)列

表中的每一列都有惟一的名称,包含不同的数据。此外,每一列都有一个相关的数据类型。

3)行

表中的每一行代表一个客户。每一行具有相同的格式,因而也具有相同的属性。行也成为记录。

4)值

每一行由对应每一列的单个值组成。每个值必须与该列定义的数据类型相同。

5)键

每一条数据所对应的唯一的标识。

6)模式

数据库整套表格的完整设计成为数据库的模式。

7)关系

外键标识两个表格数据的关系。

如何设计Web数据库

1)考虑要建模的实际对象。

2)避免保存冗余数据。

3)使用原子列值(对每一行的每个属性只存储一个数据。)

4)选择有意义的键。

5)考虑需要询问数据库的问题。

6)避免多个空属性的设计

Web数据库架构

浏览器和Web服务器之间的通信:

浏览器和PHP&MySQL服务器之间的通信

1)用户的Web浏览器发出HTTP请求,请求特定Web页面。

2)Web服务器收到.php的请求获取该文件,并将它传到PHP引擎,要求它处理。

3)PHP引擎开始解析脚本。脚本中有一条连接数据库的命令,还有执行一个查询的命令。PHP打开通向MYSQL数据库的连接,发送适当的查询。

4)MYSQL服务器接收数据库查询并处理。将结果返回到PHP引擎。

5)PHP以你去哪干完成脚本运行,通常,这包括将查询结果格式化成HTML格式。然后再输出HTML返回到Web服务器。

6)Web服务器将HTML发送到浏览器。

 

二.MySQL操作

登录到MySQL

1)打开MySQL Command Line Client

2)输入root的设置密码

MySQL常规命令

1)显示当前数据库的版本号和日期。

SELECT VERSION(),CURRENT_DATE();

2)通过AS关键字设置字段名。

SELECT VERSION() AS version;  //可设置中文,通过单引号

3)通过SELECT 执行返回计算结果

SELECT (20+5)*4;

4)通过多行实现数据库的使用者和日期

>SELECT

>USER()

>,

>NOW()

>;

5)通过一行显示数据库使用者和日期

>SELECT USER();SELECT NOW();

6)命令的取消

>\c

7)MySQL窗口的退出

>exit;

MySQL常用数据类型

整数型:TINYINT,SMALLINT,INT,BIGINT

浮点型:FLOAT,DOUBLE,DECIMAL(M,D)

字符型:CHAR,VARCHAR

日期型:DATETIME,DATE,TIMESTAMP

备注型:TINYTEXT,TEXT,LONGTEXT

日期型


列类型


“零”值


DATETIME


‘0000-00-00 00:00:00‘


DATE


‘0000-00-00‘


TIMESTAMP


00000000000000


TIME


‘00:00:00‘


YEAR


0000

字符串型



CHAR(4)


存储需求


VARCHAR(4)


存储需求


‘‘


‘    ‘


4个字节


‘‘


1个字节


‘ab‘


‘ab  ‘


4个字节


‘ab ‘


3个字节


‘abcd‘


‘abcd‘


4个字节


‘abcd‘


5个字节


‘abcdefgh‘


‘abcd‘


4个字节


‘abcd‘


5个字节

整数型


类型


字节


最小值


最大值


(带符号的/无符号的)


(带符号的/无符号的)


TINYINT


1


-128


127


0


255


SMALLINT


2


-32768


32767


0


65535


MEDIUMINT


3


-8388608


8388607


0


16777215


INT


4


-2147483648


2147483647


0


4294967295


BIGINT


8


-9223372036854775808


9223372036854775807


0


18446744073709551615

整数型


类型


字节


最小值


最大值


FLOAT


4


+-1.175494351E-38


+-3.402823466E+38


DOUBLE


8


+-2.2250738585072014E-308


+-1.7976931348623157E+308


DECIMAL


可变


它的取值范围可变。

备注型


类型


描述


TINYTEXT


字符串,最大长度255个字符


TEXT


字符串,最大长度65535个字符


MEDIUMTEXT


字符串,最大长度16777215个字符


LONGTEXT


字符串,最大长度4294967295个字符

MySQL数据库操作

1)显示当前存在的数据库

>SHOW DATABASES;

2)选择你所需要的数据库

>USE guest;

3)查看当前所选择的数据库

>SELECT DATABASE();

4)查看一张表的所有内容

>SELECT * FROM guest;   //可以先通过SHOW TABLES;来查看有多少张表

5)根据数据库设置中文编码

>SET NAMES gbk;   //set names utf8;

6)创建一个数据库

>CREATE DATABASE book;

7)在数据库里创建一张表

>CREATE TABLE users (

>username VARCHAR(20),   //NOT NULL 设置不允许为空

>sex CHAR(1),

>birth DATETIME);

8)显示表的结构

>DESCIRBE users;

9)给表插入一条数据

>INSERT INTO users (username,sex,birth) VALUES (‘Lee‘,‘x‘,NOW());

10)筛选指定的数据

> SELECT * FROM users WHERE username = ‘Lee‘;

11)修改指定的数据

>UPDATE users SET sex = ‘男‘ WHERE username=‘Lee‘;

12)删除指定的数据

> DELETE FROM users WHERE username=‘Lee‘;

13)按指定的数据排序

> SELECT * FROM users ORDER BY birth DESC;  //正序

14)删除指定的表

>DROP TABLE users;

15)删除指定的数据库

>DROP DATABASE book;

 

时间: 2024-10-10 08:46:17

PHP MySQL数据库一的相关文章

Linux环境下MySQL数据库用SQL语句插入中文显示 “问号或者乱码 ” 问题解决!

问题: 在普通用户权限下执行 mysql -u root -p进入mysql数据库,中间步骤省略,插入数据:insert into 库名(属性)values('汉字'); 会出现如下提示:  Query OK, 1 row affected, 1 warning (0.00 sec)    表明出现错误,没有插入成功,然后执行select * from 表名   就会出现如下的问题:显示的表中出现乱码或者问号. 如图: 解决方案: 首先重新打开一个终端窗口(方便操作),进入root用户模式 执行

MySQL数据库基础知识

day02 MySQL数据库基础知识 一.基础知识概述: 基础决定你这门课程的学习成败!只有学习好这些基础知识以后,你才能真正的运用自如.才能够对数据库有更深入的了解,道路才会越走越远. 二.基础知识: 1.数据库(database):数据库就好比是一个物理的文档柜,一个容器,把我们整理好的数据表等等归纳起来. 创建数据库命令:        create database 数据库名; 2.查看数据库         show databases; 3.打开指定的数据库         use 

Linux环境下启动MySQL数据库出现找不到mysqld.sock的解决办法!

问题: 在普通用户权限下运行:mysql -u root -p,回车之后如果会出现如下错误:ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2) 此错误的意思就是没有找到mysqld.sock文件. 解决办法: 首先进入超级用户root权限  sudo -i 或者su - root 切换到默认目录 cd /var/lib/mysql  下查看

MySQL数据库

day01 MySQL数据库及数据类型 一.MySQL概述: MySQL数据库是一个关系型数据库,是目前流行的开源代码数据库,是完全网络化的跨平台的关系型数据库系统,MySQL数据库同时也是目前市场上得到广泛运用的和安装使用的,可以称的上是目前运行速度最快的sql语言数据库,主要的优势和特点有一下几点: 1.成本---MySQL数据库是开源代码的,一般是免费使用. 2.性能---MySQL数据库执行速度快 3.可信赖---某些大型的公司和企业单位以及网站都是使用MySQL数据库. 4.简单---

MySQL数据库中的算术运算符

MySQL数据库中的算数运算符 MySQL数据库中的算术运算符 一.运算符的概述: 运算符在MySQL数据库中也是很重要的知识体,在执行sql语句的时候这个运算符对操作数据帮助很大.其中运算符的运用可以帮助你减省大量的时间,操作起来也比较灵活. 二.运算符 运算符主要包括"算数运算符"."比较运算符"."罗运算符"."位运算符"四大类,下面我们就一次学习一下. 1.算术运算符 算术运算符在sql语句的时候经常使用,例如对表的字

MySQL数据库自学

MySQL数据库自学序言 亲爱的自己和各位读者朋友: 您们好! 这是作者本人自学Java编程开发的一系列文章,不具有一定的权威性,也算是自己一个人的学习笔记和总结,希望自己通过博客的形式将我自己的学习效率得到提高.如自学的稳重存在不足或错误的地方希望广大的博客朋友们多多指教.本人在此不胜感激!  天下数据库同属一家,可以说是兄弟关系.学习MySQL数据库可以说是一件很有趣的学习过程,就目前市场上对MySQL数据库的程序员需求量比较大.当你自己应聘一份工作的时候,MySQL数据库的技术技能是你必须

利用PHP实现登录与注册功能以及使用PHP读取mysql数据库——以表格形式显示数据

登录界面 <body><form action="login1.php" method="post"><div>用户名:<input type="text" name="uid" /></div><br /><div>密码:<input type="password" name="pwd" />

Mysql数据库理论基础之五--SELECT单多表查询、子查询、别名

一.简介 由MySQL AB公司开发,是最流行的开放源码SQL数据库管理系统,主要特点: 1.是一种数据库管理系统 2.是一种关联数据库管理系统 3.是一种开放源码软件,且有大量可用的共享MySQL软件 4.MySQL数据库服务器具有快速.可靠和易于使用的特点 5.MySQL服务器工作在客户端/服务器模式下,或嵌入式系统中 InnoDB存储引擎将InnoDB表保存在一个表空间内,该表空间可由数个文件创建.这样,表的大小就能超过单独文件的最大容量.表空间可包括原始磁盘分区,从而使得很大的表成为可能

Mysql数据库性能优化(一)

参考 http://www.jb51.net/article/82254.htm 今天,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显.关于数据库的性能,这并不只是DBA才需要担心的事,而这更是我们程序员需要去关注的事情.当我们去设计数据库表结构,对操作数据库时(尤其是查表时的SQL语句),我们都需要注意数据操作的性能.这里,我们不会讲过多的SQL语句的优化,而只是针对MySQL这一Web应用最多的数据库. mysql的性能优化无法一蹴而就,必须一步一步慢慢来,从各个方面

Java基础知识—发送Emai和访问MySQL数据库(七)

概述 Java程序发送 E-mail 十分简单,但是首先你应该在你的机器上安装 JavaMail API 和Java Activation Framework (JAF) .Java访问数据则需要 使用JDBC 连接 MySQL 数据库.JDBC起到数据库驱动作用. E-Mail的发送 第三方包的下载地址方式,加载之后在对应的项目中导入该库文件. 访问 JavaMail 官网下载最新Jar文件: 访问 JAF(版本 1.1.1)官网下载最新JAR文件: 以下是下载之后,编写测试代码,能够借助网易