木子屋 Dnawo's BLOG

分类:Web编程

共 939 篇

MSSQL存储过程中获取记录集并循环操作一例

Create PROCEDURE my_sql AS declare @id int,@loginname varchar(20),@website varchar(100) declare rs cursor for select top 50 id,loginname,website from union_user open rs fetch next from rs into @id,@loginname,@website while @@fetch_status=0 begin print convert(varchar,@id) + ',' +…

MSSQL存储过程中使用set和select对变量赋值的区别

SQL Server 中对已经定义的变量赋值的方式用两种,分别是 SET 和 Select。对于这两种方式的区别,SQL Server 联机丛书中已经有详细的说明,但很多时候我们并没有注意,其实这两种方式还是有很多差别的。 SQL Server推荐使用 SET 而不是 Select 对变量进行赋值。 当表达式返回一个值并对一个变量进行赋值时,推荐使用 SET 方法。 下表列出 SET 与 Select 的区别。请特别注意红色部分。   Set Select 同时对多个变量同时赋值 不支持 支持 表达式返回多个值时 出错 将返回的最后一个值赋给变量 表达式未返回值 变量被赋null值 变量保持原值…

在MSSQL中使用变量做为存储过程表名

很习惯的我们可能会想用下边的存储过程来实现: MSSQL会提示你:必须声明变量 '@tablename'!其实只要稍加修改就能实现: 执行看看,是不是很简单^_^

ASP操作SQLite数据库一例

要用ASP来操作SQLite数据库,前提条件是在服务器上得安装SQLite的ODBC驱动程序,可到这个站点上下载安装:http://www.ch-werner.de/sqliteodbc/,安装好后就可以像使用Access一样来使用SQLite了!下边是一个SQLite数据库结构: Create TABLE admin(username text,age integer); 我们再来用ASP演示下如何对SQLite数据库进行记录的增、查、改、删操作:

PowerEasy® SiteWeaver™ CMS 6.5点券、有效期兑换多扣修正

假设资金与点券的兑换比率是1:1,当输入资金1.9兑换点券时,提示的是"成功将1.9元资金兑换成1点券",查看资金余额你会发现被扣了1.9,而点券只增加了1,也就是说,其中0.9元被多扣了!积分与点券的兑换也存在同样的问题!在User\User_Exchange_Code.asp中找到相关函数SaveExchange内容如下: 注意其中的蓝色部分,都是直接减去输入的值,没有考虑到输入的值可能不是兑换比率的倍数,所以才出现了上述多扣现象,解决的方法是减去输入的值后还应加上相除的余数部分,修改后的代码如下: 同样有效期兑换也存在同样的问题,修改User\User_Exchange_Code.asp的SaveValid函数如下:…

动态输出表格时单元格动态合并解决方法

假如我们要输出一个两行N列的表格,其中第一行有N列,第二行有两列,那么第二行就得用td的colspan属性来合并单元格。实际情况是N是未知的,那么colspan的值应为多少呢?我们知道:如果colspan的值小于N-1的话那么表格会变得残缺不全,影响美观。起初我的想法声明一个变量做计数器,统计出N的具体值,然后colspan的值就为N-1!然而在看PowerEasy® SiteWeaver™ CMS代码时给了我一些启发:如果我们能给colspan一个固定值,并保证这个固定值总会比N-1大,那么就不需要多声明一个变量来做计数器了,因为这时表格显示是完整的。下边是测试的代码: