如何在Windows上配置并整合PHP和MySQL(1)
在本文中,我将逐步为你们说明如何在Windows环境中安装并配置这些产品。对你们中的一些人来说,本文提供的信息可能过于简单,但本文旨在完成文章标题所提出的目标,提供逐步的指导。
这个特殊的软件组合一般被称作WIMP(Windows/IIS/MySQL/PHP),仿效Linux领域内的LAMP(Linux/Apache/MySQL/PHP)。
我的实验室系统运行64位Windows Server 2003企业版。
第一步:在Windows Server 2003 R2系统上安装Application Server角色
为说明这个例子,我将用IIS作为网络服务器。你也可以选择不需要IIS的PHP、MySQL和Apache组合,但在此例中我不会使用它们。
要在系统上安装Application Server角色,点击“开始菜单”,选择“管理服务器”。在管理服务器主窗口中,点击“添加或删除一个角色”选项。(图1)
把Application Server角色安装到服务器上,使它可以做网站的主机
Windows将在服务器上搜索现有的角色,提供一个角色的完整列表以进行安装。(图2)
Application Server角色包括IIS和ASP.net
在服务器角色的安装过程中,系统可能要求你插入Windows Server光盘。所需的文件在光盘1中。
安装完成后,系统会更新管理服务器窗口,以反映所添加的新角色。
第二步:下载PHP和MySQL
这时,服务器已作好支持网页的准备。但由于还没有安装PHP或MySQL,网页还是静态的。在安装PHP和MySQL之前,必须从它们各自的网站下载其Windows版本。
SQL是结构化查询语言(Structured Query Language)的缩写。这种语言允许我们对数据库进行复杂的操作。SQL语言的使用范围非常广泛。许多数据库产品都支持SQL语言,这意味着如果我们学会了SQL语言,我们可以把这种知识运用到MS Access 或 SQL Server, Oracle, DB2以及非常多的其它数据库中。
SQL语言运用在关系型数据库中。一个关系型数据库把数据存储在表(也称关系)中。每个数据库的主要组成就是一组表。每个表又由一组记录组成--每条记录在表中有相同的结构,包含固定数量的具有一定类型的字段。
下面我们来看一个实际的数据库中的表。该表的表名为cia,包含250多条记录,每个记录代表一个国家。表由5个字段组成,字段的值有的是字符串类型,有的是数字类型。
name region area population gdp
---- ------ ------ ---------- -----------
Yemen Middle East 527970 14728474 23400000000
Zaire Africa 2345410 44060636 18800000000
Zambia Africa 752610 9445723 7900000000
Zimbabwe Africa 390580 11139961 17400000000
下面我们可以用一些SQL语句来查询这个表中我们该兴趣的数据。
1. 中国的GDP是多少?
查询用的SQL语句为:
select gdp from cia where name='china'
查询结果为:
4800000000000
2. 给出每个地区的国家数和人口总数。并且按地区的人口数从多到少排序。
查询用的SQL语句为:
SELECT region, COUNT(name), SUM(population)
FROM cia
GROUP BY region
ORDER BY 3 DESC
查询结果为:
region COUNT(name) SUM(population)
------ ----------- ---------------
Asia 14 2963031109
Africa 59 793382933
Europe 43 580590872
....
怎么样,对SQL语言有了基本的了解了吧,同时对数据库,表,记录,字段等一系列在SQL语言中常用的感念也有大概的认识吧。如果不是很清楚也没关系,在接下来的内容中我们从SQL语言中最简单的内容逐步给大家作介绍,并提供丰富的练习让大家实际操作。相信学完本系列教程,你可以成为一个SQL语言的高手。
在介绍GROUP BY 和 HAVING 子句前,我们必需先讲讲sql语言中一种特殊的函数:聚合函数,例如SUM, COUNT, MAX, AVG等。这些函数和其它函数的根本区别就是它们一般作用在多条记录上。
PremiumSoft 发布了Mac OS X下的Navicat Mysql图形客户端软件7.1.13版。该版本支持HTTP通道、外键数据选择、MySQL 5.X和触发器。
Navicat是一个功能强大的易于使用的MySQL客户端软件,提供了管理和开发MySQL的许多扩展功能。
下载测试版地址: http://www.navicat.com/download.html.
原文链接:http://www.navicat.com/news.html?yr=2006&mth=8
(t114)
7.2.9 MySQL 如何优化 ORDER BY
在一些情况下,MySQL可以直接使用索引来满足一个 ORDER BY 或 GROUP BY 子句而无需做额外的排序。
尽管 ORDER BY 不是和索引的顺序准确匹配,索引还是可以被用到,只要不用的索引部分和所有的额外的 ORDER BY 字段在 WHERE 子句中都被包括了。下列的几个查询都会使用索引来解决 ORDER BY 或 GROUP BY 部分:
SELECT * FROM t1 ORDER BY key_part1,key_part2,... ;
SELECT * FROM t1 WHERE key_part1=constant ORDER BY key_part2;
SELECT * FROM t1 WHERE key_part1=constant GROUP BY key_part2;
SELECT * FROM t1 ORDER BY key_part1 DESC, key_part2 DESC;
SELECT * FROM t1
WHERE key_part1=1 ORDER BY key_part1 DESC, key_part2 DESC;
在另一些情况下,MySQL无法使用索引来满足 ORDER BY,尽管它会使用索引来找到记录来匹配 WHERE 子句。这些情况如下:
对不同的索引键做 ORDER BY :
SELECT * FROM t1 ORDER BY key1, key2;
在非连续的索引键部分上做 ORDER BY:
SELECT * FROM t1 WHERE key2=constant ORDER BY key_part2;
同时使用了 ASC 和 DESC:
SELECT * FROM t1 ORDER BY key_part1 DESC, key_part2 ASC;
用于搜索记录的索引键和做 ORDER BY 的不是同一个:
SELECT * FROM t1 WHERE key2=constant ORDER BY key1;
有很多表一起做连接,而且读取的记录中在 ORDER BY 中的字段都不全是来自第一个非常数的表中(也就是说,在 EXPLAIN 分析的结果中的第一个表的连接类型不是 const)。
下面的例子展示了如何通过 EXPLAIN 提供的信息来较大程度地优化多表联合查询的性能。
假设有下面的 SELECT 语句,正打算用 EXPLAIN 来检测:
EXPLAIN SELECT tt.TicketNumber, tt.TimeIn,
tt.ProjectReference, tt.EstimatedShipDate,
tt.ActualShipDate, tt.ClientID,
tt.ServiceCodes, tt.RepetitiveID,
tt.CurrentProcess, tt.CurrentDPPerson,
tt.RecordVolume, tt.DPPrinted, et.COUNTRY,
et_1.COUNTRY, do.CUSTNAME
FROM tt, et, et AS et_1, do
WHERE tt.SubmitTime IS NULL
AND tt.ActualPC = et.EMPLOYID
AND tt.AssignedPC = et_1.EMPLOYID
AND tt.ClientID = do.CUSTNMBR;
在这个例子中,先做以下假设:
要比较的字段定义如下:
(t114)
相关文章
- VPN可以虚拟出一个专用网络,让远处的计算机和你相当于处在同一个局域网中,而中间的数据也可以实现加密传输,用处很大,特别是在一些大公司,分公司处在不同的区域。...2016-01-27
- 这篇文章主要介绍了Windows批量搜索并复制/剪切文件的批处理程序实例,需要的朋友可以参考下...2020-06-30
- 这篇文章主要为大家详细介绍了C#创建一个简单windows窗体应用的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2020-06-25
- 这篇文章主要介绍了Powershell 查询 Windows 日志的方法,需要的朋友可以参考下...2020-06-30
- 这篇文章主要介绍了jquery自定义插件开发之window的实现过程的相关资料,需要的朋友可以参考下...2016-05-09
- 这篇文章主要介绍了C#实现windows form限制文本框输入的方法,涉及C#限制文本框输入的技巧,非常具有实用价值,需要的朋友可以参考下...2020-06-25
- 本篇文章主要介绍了详解Windows下安装Nodejs步骤,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧 ...2017-05-22
- 本文实例讲述了JS实现不使用图片仿Windows右键菜单效果代码。分享给大家供大家参考,具体如下:这里演示JS不使用图片仿Windows右键菜单效果,这款代码灵活使用了文鼎字,配合CSS和JS做出了这个和系统右键菜单很相似的东东。...2015-10-23
C# Windows API应用之基于GetDesktopWindow获得桌面所有窗口句柄的方法
这篇文章主要介绍了C# Windows API应用之基于GetDesktopWindow获得桌面所有窗口句柄的方法,结合实例形式分析了GetDesktopWindow函数用于获取窗口句柄的具体使用方法与相关注意事项,需要的朋友可以参考下...2020-06-25- 作为一个新生事物,Linux吸引了不少眼球,但是它能否快捷、方便地与Windows资源共享,是一个很重要的问题。大家知道,Windows之间可以利用“网络邻居”来实现资源共享,而Linux...2016-11-25
- 这篇文章主要介绍了利用C#修改Windows操作系统时间,帮助大家更好的利用c#操作系统,感兴趣的朋友可以了解下...2020-12-08
C#3.0使用EventLog类写Windows事件日志的方法
这篇文章主要介绍了C#3.0使用EventLog类写Windows事件日志的方法,以简单实例形式分析了C#写windows事件日志的技巧,具有一定参考借鉴价值,需要的朋友可以参考下...2020-06-25- 下面小编就为大家带来一篇jquery自定义插件——window的实现【示例代码】。小编觉得挺不错的,现在分享给大家,也给大家做个参考...2016-05-09
浅谈vue 组件中的setInterval方法和window的不同
这篇文章主要介绍了浅谈vue 组件中的setInterval方法和window的不同,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-07-30Windows Server 2012 R2或2016无法安装.NET Framework 3.5.1的解决方法
这篇文章主要为大家详细介绍了Windows Server 2012 R2或2016无法安装.NET Framework 3.5.1,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2017-07-06Windows Server 2016 上配置 APACHE+SSL+PHP+perl的教程详解
Windows Server 2016 上配置 APACHE+SSL+PHP+perl怎么配置?小编推荐了一篇介绍Windows Server 2016 上配置 APACHE+SSL+PHP+perl的教程,有需要的同学快来看看吧! ...2017-07-06- 这篇文章主要介绍了C#实现控制Windows系统关机、重启和注销的方法,涉及C#调用windows系统命令实现控制开机、关机等操作的技巧,非常简单实用,需要的朋友可以参考下...2020-06-25
- web打印 window.print()介绍,需要的朋友可以参考一下...2020-06-25
- 这篇文章主要介绍了Windows窗口消息,以实例形式详细罗列了Windows窗口消息,非常具有实用价值,需要的朋友可以参考下...2020-04-25
- rsync是linux下功能强大的同步软件。现在在windows下也可以使用rsync(cwrsync)来同步数据了...2016-01-27