关于sqlite3类似MSSQL使用top的方法

作者:freethy 发布于:2012-5-31 13:30 Thursday

今日用sqlite3开发

在执行下面语句时报“SQLite error \r\n near "1": syntax error ”语法错误

select top 1 fid from tuser

查看相关资料得知sqlite3不支持top语法所致

上述功能用LIMIT 可以实现。用法和MYSQl中的类似。

SELECT * FROM table   LIMIT [offset,] rows | rows OFFSET offset
mysql> SELECT * FROM table LIMIT 5,10;  // 检索记录行 6-15

//为了检索从某一个偏移量到记录集的结束所有的记录行,可以指定第二个参数为 -1:
mysql> SELECT * FROM table LIMIT 95,-1; // 检索记录行 96-last.

//如果只给定一个参数,它表示返回最大的记录行数目:
mysql> SELECT * FROM table LIMIT 5;     //检索前 5 个记录行

//换句话说,LIMIT n 等价于 LIMIT 0,n。

<完>

评论(24) 引用(0) 浏览(2450)

无法安装IE8,因为其他程序或更新正在等待重启您的计算机 解决办法

作者:freethy 发布于:2012-5-25 13:30 Friday

@echo off
rem fix update garbage value
set Update=HKLM\SOFTWARE\MicroSoft\Update
set Updates=HKLM\SOFTWARE\MicroSoft\Updates
rem set AutoUpdate="HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\AutoUpdate"
echo Cleanning "%Update%"
for /f "tokens=1 delims=" %%a in ('reg query %Update%^|Findstr /i "UpdateExeVolatile"') do (
reg delete %%a /f
)
echo %Update% is cleanned!
echo Cleanning "%Updates%"
for /f "tokens=1 delims=" %%a in ('reg query %Updates%^|Findstr /i "UpdateExeVolatile"') do (
reg delete %%a /f
)
echo %Updates% is cleanned!
echo press any key to exit...
pause>nul

新建文本文档,保存为.bat格式,执行。

再重新安装ie8。

评论(54) 引用(0) 浏览(2281)

Windows2003各版本序列号

作者:freethy 发布于:2012-5-16 13:29 Wednesday

[该日志已设置加密,请点击标题输入密码访问]

评论(2) 引用(0) 浏览(483)

父目录权限问题

作者:freethy 发布于:2012-5-9 13:28 Wednesday

今天在本机做Drupal测试,按以往经验本以为一帆风顺风雨无阻安装完毕,
哪知浏览install.php安装却出现以下致命错误:

Warning: require_once() [function.require-once]: Unable to access ./includes/install.inc in D:wwwdrupalinstall.php on line 4

Warning: require_once(./includes/install.inc) [function.require-once]: failed to open stream: No error in D:wwwdrupalinstall.php on line 4

Fatal error: require_once() [function.require]: Failed opening required './includes/install.inc' (include_path='.;C:php5pear') in D:wwwdrupalinstall.php on line 4

按理说我从官方下载的Drupal源程序应该不会有什么问题,
打开install.php看了下第4行的内容为:require_once ‘./includes/install.inc’;
这条语句本身没有任何问题,更何况Drupal经过上万人的测试也不可能有这么低级的BUG,
于是首先怀疑此乃服务器配置不当造成,
检查了权限均无问题,父路径早已开启,可问题依然存在,
根据错误字面上的意思是不能访问到install.inc这个文件,但此文件确实存在,
根据偶N年经验+感觉,判断出此应为找不到路径问题,
于是尝试修改源文件require_once ‘./includes/install.inc’;
为require_once ‘includes/install.inc’;( 去掉了./ )
问题果然解决。
看来虽然开启了IIS的父路径但程序仍然不认父路径,
知道了原因,带着疑问baidu了一下,发现不少Discuz用户也有类似错误出现,
但观其错误提示均有几个共同点:
1.大多为Windows用户
2.大多为本机环境测试
3.大多把Discuz安装在网站根目录
经过分析得出:
1.其中Windows环境没什么好评价的,Windows本来就麻烦。
2.大多为本机环境测试,说明此类问题已被服务器专业技术人员所熟知,只是个人用户缺乏经验设置不当造成。
3.第三条比较可疑,程序安装到网站根目录,那么网站根目录的父目录就是IIS权限以外的目录了,
Discuz是这个道理,Drupal也必定是,
于是尝试修改网站根目录Drupal文件夹的父目录www的权限为 Internet来宾用户可读,问题果然解决。
总结:
1.在通常情况下,我们配置IIS目录权限都是只设置网站的根目录及其子目录的权限,往往忽略网站根目录的上级目录。
2.以后遇上这种情况要么修改网站根目录的上级目录权限为可读,要么把此类需要父目录读权限支持的程序放到网站根目录的子目录中。
3.Drupal和Discuz这种国际知名的开源软件有待提高环境兼容性,因为我看到很多其他知名开源软件的require_once路径并没有加上 ./ 。

评论(27) 引用(0) 浏览(2300)

SVN和VS2005配置

作者:freethy 发布于:2012-5-7 13:28 Monday

文章用到的三个软件下载

VisualSVN-Server-2.5.2

AnkhSvn-2.3.10509.1073

TortoiseSVN-1.7.6.22632-win32-svn-1.7.4

以前写代码的时候总是随便写写,不注意代码的管理。造成了以后代码管理中的出现很多混乱状态。更改代码的时候有时候越改越杂,最后自己就快认不出来了。进入公司以后,突然发现公司用的就是svn进行版本管理。说起svn就有些惭愧。以前看过这方面的文章,也配置过,就是不知道怎么用(代码看少了啊)。到公司不得不用这个每天来比对代码,修改代码,所以用的多了自然就熟悉了。哎呀,看来自己当初真是浮躁了。

    在公司整天用,弄得我忍不住在家里自己的电脑上也装上一个用用,这样以后写代码的话知道以前自己做过什么。这样有对比才会有进步。于是今天我就开始配置了。具体参考文章还是SVN的老巢比较不错(看到过很多新手什么参考资料都不看,上来就问很简单的问题,其实这些在相关的技术支持网站上都有。随便一搜索就可以找到的)。

这篇文章看过之后有一种突然醒悟的感觉。 相关的安装文件这篇文章中介绍的有点复杂了,现在的安装包都做得很方便,只用双击,下一步基本上等你安装好之后相关的配置就已经配置好了。所以也不用太费什么太大的功夫去配置了。

 

   先说安装过程。

 1.安装SVN。

     现在有MSI文件,直接双击安装就可以了,全程默认安装。等安装完基本上配置也就配好了。上面参考网站中有点复杂了(不过有兴趣可以试试啊,呵呵)。

 2.安装tortoiseSVN,安装完成后把相关的语言包(可选)也安装上以后,以上两步(1和2)完成后再重启电脑。这样服务器端和客户端的都已经安装好了。这些在网上相关的教程太多了。

 3 .安装免费的VS2005插件ankhSVN.安装上之后基本上不用做什么配置,他会出现在VS2005的 工具 选项的第一个位置。如果你有以前曾经建立的项目话你打开的时候他会提示你是否用ankhSVN来管理。这个时候你只管点是就可以了。

 4.安装之后的版本仓库的建立。刚开始的时候我只弄了一个项目。建立了一个仓库。但是后来我一看我还有很多项目呢。总不能在一个仓库里面,那样设置太复杂了吧。于是我就看了一下SVN可以做的多项目管理结构发现:SVN分为管理源代码分为三个部分。第一部分就是设置仓库的位置。实际上的源代码并不在这里。这里的仓库只是起到一个索引所有。第二部分是你设置的临时文件夹。你的项目代码其实是在这里面的一个叫做trunk文件夹里面存放的。可以参看刚才给你的链接的介绍,上面很详细。第三部分是你自己的工作目录。也就是说这里面的代码是你以后工作中实际接触到的代码。因为上两部分一定是在服务器端的,而服务器端有可能是远程主机也有可能是你自己的机器作为服务器来用的。所以只有第三部分才是你今后要实际接触的部分。搞清楚这三个部分之间的关系你再去设置你的代码管理仓库就很有思路了。

     以我自己的为例。我有两个项目,一个是OGRE,一个DirectX。所以我首先在E盘建立一个文件夹

E:/SVN,用来存放第一部分。也就是代码的索引部分。这这个里面新建两个文件夹分别来管理这两个项目一个是e:/SVN/OGRE,一个是e:/SVN/DirectX。这样两个管理文件版本信息的文件夹建好了。接下来该建立存储项目源代码的文件夹了。还是在E盘。我建立了一个E:/temp文件夹用来存储每个项目的代码。同上,还在这里面见两个文件夹以便和SVN文件夹对应。一个是E:/temp/OGRE_temp,一个是E:/temp/DirectX_temp。当然了,这里面的三个文件夹就按照上面给出链接的做就好了。建好以后按照链接上面的介绍,对每一个temp文件夹进行import。里面有一个需要路径的,选择刚才建立的SVN文件夹下面的对应文件夹就可以了。当import完成以后,这个项目的代码的索引也就建成了,存放在svn文件夹中对应文件夹下面的db文件中。

    做到这里版本的管理基本上就算做完了。接下来就需要你下载版本了。右键点击你刚才自己设置的工作目录。我自己的设置的是E:/OGRE,第一次的话是checkout。在路径中选择对应到SVN文件夹下面的OGRE文件就可以了。这样你进行checkout时,就是根据SVN中版本的索引来下载你在Temp文件夹下的代码。以后你的代码改动的日志是保存在SVN文件下对应的项目的文件夹中。而代码保存在Temp中。第一次建立好以后以后就是svnupdate了。VS2005安装了ankhsvn以后你一打开被你check出来的项目的时候ankhsvn会提示你让他来管理。你点击是以后,你的所有改动保存以后直接在VS2005里面就可以通过ankh来上传到版本仓库,而不用再找到相关的工作目录下面去上传了。

评论(22) 引用(0) 浏览(1939)

Powered by emlog 苏ICP备11068260号-3