关于小数点前0的显示问题

来源:互联网 发布:全球经济数据 市盈率 编辑:程序博客网 时间:2024/06/09 14:42
关于小数点前0的显示问题
1.如果小数点后位数是固定的,那么可以使用函数FormatNumber()
示例:
<%
MyNumber=0.323
Response.Write FormatNumber(MyNumber,2,-1) '保留小数点后两位
%>


2.如果小数点后位数不固定,那么可以如下
示例:
<%
MyNumber=0.323
If Left(Cstr(MyNumber),1)="." Then Response.Write "0"&MyNumber Else Response.Write MyNumber
%>
也可以写一个函数
<%
Function FormatNum(Num)
If Left(Cstr(Num),1)="." Then FormatNum="0"&Num Else FormatNum=Num
End Function
%>

建立记录集对象:

set rs=server.createobject("adodb.recordset")
rs.open SQL语句,conn,3,2
SQL常用命令使用方法:

(1) 数据记录筛选:

sql="select * from 数据表 where 字段名=字段值 order by 字段名 [desc]"

sql="select * from 数据表 where 字段名 like '%字段值%' order by 字段名 [desc]"

sql="select top 10 * from 数据表 where 字段名 order by 字段名 [desc]"

sql="select * from 数据表 where 字段名 in ('值1','值2','值3')"

sql="select * from 数据表 where 字段名 between 值1 And 值2"

(2) 更新数据记录:

sql="update 数据表 set 字段名=字段值 where 条件表达式"

sql="update 数据表 set 字段1=值1,字段2=值2 …… 字段n=值n where 条件表达式"

(3) 删除数据记录:

sql="delete from 数据表 where 条件表达式"

sql="delete from 数据表" (将数据表所有记录删除)

(4) 添加数据记录:

sql="insert into 数据表 (字段1,字段2,字段3 …) valuess (值1,值2,值3 …)"

sql="insert into 目标数据表 select * from 源数据表" (把源数据表的记录添加到目标数据表)

(5) 数据记录统计函数:

AVG(字段名) 得出一个表格栏平均值
COUNT(*|字段名) 对数据行数的统计或对某一栏有值的数据行数统计
MAX(字段名) 取得一个表格栏最大的值
MIN(字段名) 取得一个表格栏最小的值
SUM(字段名) 把数据栏的值相加

引用以上函数的方法:

sql="select sum(字段名) as 别名 from 数据表 where 条件表达式"
set rs=conn.excute(sql)

用 rs("别名") 获取统的计值,其它函数运用同上。

(5) 数据表的建立和删除:

CREATE TABLE 数据表名称(字段1 类型1(长度),字段2 类型2(长度) …… )

例:CREATE TABLE tab01(name varchar(50),datetime default now())

DROP TABLE 数据表名称 (永久性删除一个数据表)

19. 记录集对象的方法:

rs.movenext 将记录指针从当前的位置向下移一行
rs.moveprevious 将记录指针从当前的位置向上移一行
rs.movefirst 将记录指针移到数据表第一行
rs.movelast 将记录指针移到数据表最后一行
rs.absoluteposition=N 将记录指针移到数据表第N行
rs.absolutepage=N 将记录指针移到第N页的第一行
rs.pagesize=N 设置每页为N条记录
rs.pagecount 根据 pagesize 的设置返回总页数
rs.recordcount 返回记录总数
rs.bof 返回记录指针是否超出数据表首端,true表示是,false为否
rs.eof 返回记录指针是否超出数据表末端,true表示是,false为否
rs.delete 删除当前记录,但记录指针不会向下移动
rs.addnew 添加记录到数据表末端
rs.update 更新数据表记录

---------------------------------------

Recordset对象方法

Open方法

recordset.Open Source,ActiveConnection,CursorType,LockType,Options

Source
Recordset对象可以通过Source属性来连接Command对象。Source参数可以是一个Command对象名称、一段SQL命令、一个指定的数据表名称或是一个Stored Procedure。假如省略这个参数,系统则采用Recordset对象的Source属性。

ActiveConnection
Recordset对象可以通过ActiveConnection属性来连接Connection对象。这里的ActiveConnection可以是一个Connection对象或是一串包含数据库连接信息(ConnectionString)的字符串参数。

CursorType
Recordset对象Open方法的CursorType参数表示将以什么样的游标类型启动数据,包括adOpenForwardOnly、adOpenKeyset、adOpenDynamic及adOpenStatic,分述如下:
--------------------------------------------------------------
常数 常数值 说明
-------------------------------------------------------------
adOpenForwardOnly 0 缺省值,启动一个只能向前移动的游标(Forward Only)。
adOpenKeyset 1 启动一个Keyset类型的游标。
adOpenDynamic 2 启动一个Dynamic类型的游标。
adOpenStatic 3 启动一个Static类型的游标。
-------------------------------------------------------------
以上几个游标类型将直接影响到Recordset对象所有的属性和方法,以下列表说明他们之间的区别。

-------------------------------------------------------------
Recordset属性 adOpenForwardOnly adOpenKeyset adOpenDynamic adOpenStatic
-------------------------------------------------------------
ADO Recordset的属性和方法的有效性

ADO Recordset的属性和方法在不同的光标类型下,有不同的表现,这里列出了其详细情况列表
ADO Recordset属性的有效性列表

属性 ForwardOnly Dynamic Keyset Static

AbsolutePage       无效 无效 读/写 读/写
AbsolutePosition   无效 无效 读/写 读/写
ActiveConnection  读/写 读/写 读/写 读/写
BOF                      只读 只读 只读 只读
Bookmark            无效 无效 读/写 读/写
CacheSize           读/写 读/写 读/写 读/写
CursorLocation   读/写 读/写 读/写 读/写
CursorType       读/写 读/写 读/写 读/写
EditMode          只读 只读 只读 只读
EOF               只读 只读 只读 只读
Filter               读/写 读/写 读/写 读/写
LockType           读/写 读/写 读/写 读/写
MarshalOptions 读/写 读/写 读/写 读/写
MaxRecords 读/写 读/写 读/写 读/写
PageCount 无效 无效 只读 只读
PageSize 读/写 读/写 读/写 读/写
RecordCount 无效 无效 只读 只读
Source 读/写 读/写 读/写 读/写
State 只读 只读 只读 只读
Status 只读 只读 只读 只读
在使用Microsoft OLE DB Provider for ODBC.1.0时候,属性AbsolutePosition
和AbsolutePage是只写的

ADO Recordse方法的有效性列表

方法 ForwardOnly Dynamic Keyset Static

AddNew    是 是 是 是
CancelBatch 是  是 是 是
CancelUpdate  是 是 是 是
Clone 否 否 是 是
Close 是 是 是 是
Delete 是 是 是 是
GetRows 是 是 是 是
Move 是 是 是 是
MoveFirst 是 是 是 是
MoveLast 否 是 是 是
MoveNext 是 是 是 是
MovePrevious 否 是 是 是
NextRecordset * 是 是 是 是
Open 是 是 是 是
Requery 是 是 是 是
Resync 否 否 是 是
Supports 是 是 是 是
Update 是 是 是 是
UpdateBatch 是 是 是 是

* Microsoft Access databases.不支持
--------------------------------------------------------------
其中NextRecordset方法并不适用于Microsoft Access数据库。

LockType
Recordset对象Open方法的LockType参数表示要采用的Lock类型,如果忽略这个参数,那么系统会以Recordset对象的LockType属性为预设值。LockType参数包含adLockReadOnly、adLockPrssimistic、adLockOptimistic及adLockBatchOptimistic等,分述如下:

-------------------------------------------------------------
常数 常数值 说明
--------------------------------------------------------------
adLockReadOnly 1 缺省值,Recordset对象以只读方式启动,无法运行AddNew、Update及Delete等方法
adLockPrssimistic 2 当数据源正在更新时,系统会暂时锁住其他用户的动作,以保持数据一致性。
adLockOptimistic 3 当数据源正在更新时,系统并不会锁住其他用户的动作,其他用户可以对数据进行增、删、改的操作。
adLockBatchOptimistic 4 当数据源正在更新时,其他用户必须将CursorLocation属性改为adUdeClientBatch才能对数据进行增、
删、改的操作。

------------------------------------------------------

RS.OPEN SQL,CONN,A,B

A:

ADOPENFORWARDONLY(=0)
只读,且当前数据记录只能向下移动

ADOPENKEYSET(=1)
只读,当前数据记录可自由移动

ADOPENDYNAMIC(=2)
可读写,当前数据记录可自由移动

ADOPENSTATIC(=3)
可读写,当前数据记录可自由移动,可看到新增记录

B:

ADLOCKREADONLY(=1)
缺省锁定类型,记录集是只读的,不能修改记录

ADLOCKPESSIMISTIC(=2)
悲观锁定,当修改记录时,数据提供者将尝试锁定记录以确保成功地编辑记录。只要编辑一开始,则立即锁住记录。

ADLOCKOPTIMISTIC(=3)
乐观锁定 ,直到用Update方法提交更新记录时才锁定记录。 ADLOCKBATCHOPTIMISTIC(=4)
批量乐观锁定,允许修改多个记录,只有调用UpdateBatch方法后才锁定记录。

当不需要改动任何记录时,应该使用只读的记录集,这样提供者不用做任何检测。
对于一般的使用,乐观的锁定可能是最好的选择,因为记录只被锁定一小段时间,
数据在这段时间被更新。这减少了资源的使用。
 
原创粉丝点击