这阵子一直没有发布新的日志.工作中一直开发一个项目.我把项目迁移回家时出现了一个问题.
页面与sql进行多次通信是就会很慢.很简单的一个页面搞了30多秒还没有显示出来.当时以,IIS, 伪静态, 程序, windows系统 进行排查.找原因.为什么没有考虑到sql2005尼.我在SQL里查询测试了很快,也不没有去考虑它.找了一圈的原因后来还是不行.系统也还原了.无耐我从新安装WINDOWS 2008.下面安装SQL2005.这时查询机器配置时提示一个警告.这项就是IIS.我想不为吧.以前安装好像不会提示这个警告的.这次小心的没有接着安装.把SQL 2008解压出来后安装.
下面结果很显然.的确是SQL 2005的问题.SQL 2008下面页面跑的唰唰的.
sql 2005
Windows 2008下成功配置Iis+Php+Mysql+Zend Optimizer+GD库+Phpmyadmin
自Windows 2003下成功配置Iis+Php+Mysql+Zend Optimizer+GD库+Phpmyadmin这往篇文章发表后被不少人转载。都是改头换面。除了准备软件下载URL中出现cngothic外。其它地方都被删除。那些个网络流氓真够无耻的。
windows 2008 与 windows 2003 区别在于前者是iis7,后者是iis6。两个系统下配置Iis+Php+Mysql+Zend Optimizer+GD库+Phpmyadmin基本相同。点击查看Windows 2003下成功配置Iis+Php+Mysql+Zend Optimizer+GD库+Phpmyadmin
下面来仔细说明下 Windows 2008下成功配置Iis+Php+Mysql+Zend Optimizer+GD库+Phpmyadmin 的另一种方法。使用映射模块:FastCgiModule 来实现。
一:准备所需软件
1:mysql-5.0.18-win32
2:php-5.2.4-Win32.zip
3:mysqlcc-0.9.4-win32
4:phpMyAdmin-2.11.1-all-languages
5:ZendOptimizer-3.2.6-Windows-i386
二:开始配置Php
1:将php-5.2.4-Win32.zip解压后命名为Php.复制到 C:\ 下.
2:将C:\php 与 C:\php\ext 所有*.dll文件复制到 C:\WINDOWS\system32 下并覆盖.
3:将 C:\php 下的 php-win.exe,php.ini-dist,php.exe 三个文件复制到 C:\WINDOWS 并重命名 php.ini-dist 为 php.ini
4:开始-运行-inetmgr:打开iis7后。选择左侧起始页下面的IIS服务器。此IIS服务器可以展开。里面有各个站点这个不用管它。此时配置全局IIS,所以选择IIS服务器。在右侧区域有显示出来很多带图标功能项。双击处理程序映射项。选择右侧操作中的添加模块映射。
请求路径:*.php
模块:FastCgiModule
可执行文件:C:\Php\php-cgi.exe
名称:FastCGI-PHP (自定义)
开始-运行-iisreset
此时已经可以运行php程序了。
Read the rest of this entry »
Iis+Php+Mysql, windows 2008, 主机配置
sql存储过程:通用删除数据
经过修改利用上了事务.对于ASP开发时获取输出参数的值来判断是否执行成功
有哪些地方没有处理好的
请大侠纠正
- */ ------------------------------------------------------------
- */ 出自: 歌特中国 http://www.cngothic.com
- */ 作者: cngothic
- */ ------------------------------------------------------------
- CREATE PROC DeleteTable
- @tableName NVARCHAR(30),
- @whereStr NVARCHAR(500) = NULL,
- @groupStr NVARCHAR(50) = NULL,
- @deleteNum smallInt OUTPUT
- AS
- DECLARE @sqlStr NVARCHAR(1000)
- SET @sqlStr = 'DELETE FROM ' + @tableName
- if (@whereStr != '')
- BEGIN
- SET @sqlStr = @sqlStr + ' WHERE ' + @whereStr
- END
- if (@groupStr != '')
- BEGIN
- SET @sqlStr = @sqlStr + ' GROUP BY ' + @whereStr
- END
-
- BEGIN TRANSACTION
- EXEC(@sqlStr)
- IF @@error=0
- BEGIN
- COMMIT TRANSACTION
- SET @deleteNum = 1
- END
- ELSE
- BEGIN
- ROLLBACK TRANSACTION
- SET @deleteNum = 0
- END
-
- GO
COMMIT TRANSACTION, CREATE PROC, DELETE FROM, ROLLBACK TRANSACTION, sql存储过程, 删除数据
sql存储过程:通用写入更新数据
经过再次僚属纠正了些错误.也采用了事务来操作
有哪些地方没有处理好的
请大侠纠正
- */ ------------------------------------------------------------
- */ 出自: 歌特中国 http://www.cngothic.com
- */ 作者: cngothic
- */ ------------------------------------------------------------
- CREATE PROC AddUpTable
- @tableName NVARCHAR(50),
- @fileName NVARCHAR(1000),
- @fileCount VARCHAR(8000),
- @addUpYN BIT,
- @whereStr NVARCHAR(1000) = NULL,
- @groupStr NVARCHAR(1000) = NULL,
- @inUpdateNum SmallInt OUTPUT
- AS
- declare @sqlStr VARCHAR(8000)
- declare @startFileName INT
- declare @endFileName INT
- declare @startFileCount INT
- declare @endFileCount INT
- IF @addUpYN = 1
- BEGIN
- SET @sqlStr = 'INSERT INTO ' + @tableName + ' (' + @fileName + ') VALUES (' + @fileCount + ')'
- END
- ELSE
- BEGIN
- SET @fileName = @fileName + ','
- SET @fileCount = @fileCount + '|||'
- SET @sqlStr = 'UPDATE ' + @tableName
- SET @startFileName = 1
- SET @startFileCount = 1
- SET @endFileName = CHARINDEX(',', @fileName, @startFileName)
- SET @endFileCount = CHARINDEX('|||', @fileCount, @startFileCount)
- SET @sqlStr = @sqlStr + ' SET '
- WHILE (@endFileName <> 0)
- BEGIN
- SET @sqlStr = @sqlStr + SUBSTRING(@fileName, @startFileName, @endFileName-@startFileName) + '='
- SET @startFileName = @endFileName + 1
- SET @endFileName = CHARINDEX(',', @fileName, @startFileName)
-
- SET @sqlStr = @sqlStr + '''' + SUBSTRING(@fileCount, @startFileCount, @endFileCount-@startFileCount) + ''','
- SET @startFileCount = @endFileCount + 3
- SET @endFileCount = CHARINDEX('|||', @fileCount, @startFileCount)
- END
- SET @sqlStr = SUBSTRING(@sqlStr, 1, LEN(@sqlStr)-1)
- IF (@whereStr != '')
- BEGIN
- SET @sqlStr = @sqlStr + ' WHERE ' + @whereStr
- END
- IF (@groupStr != '')
- BEGIN
- SET @sqlStr = @sqlStr + ' GROUP BY ' + @groupStr
- END
- END
- PRINT @sqlStr
- BEGIN TRANSACTION
- EXEC(@sqlStr)
- IF @@error=0
- BEGIN
- COMMIT TRANSACTION
- SET @inUpdateNum = 1
- END
- ELSE
- BEGIN
- ROLLBACK TRANSACTION
- SET @inUpdateNum = 0
- END
-
-
- GO
COMMIT TRANSACTION, CREATE PROCEDURE, ROLLBACK TRANSACTION, sql存储过程, 更新数据