Visual Basic for Applications 与 SQL Server Transact-SQL 之间的函数比较 (ADP)
注释 本主题中的信息仅适用于 Microsoft access 项目 (.adp)。
下表比较了 Microsoft Visual Basic for Applications (VBA) 和 Microsoft SQL Server Transact-SQL 中的常用函数。有关 Transact-SQL 标量函数的详细信息,请参阅 SQL Server 文档。
注意 “升迁向导”将下列 VBA 函数(用于表有效性规则、字段验证和默认情况下)转换为对等的 Transact-SQL 函数。
字符串函数
VBA 函数 Transact-SQL
标量函数
------------------------------------------------
Asc(x) ASCII(x)
Chr$(x) CHAR(x)
Lcase$(x) LCASE(x)
LOWER(x)
Len(x) DATALENGTH(x)
Ltrim$( x) LTRIM(x)
Mid$(x,y,z) SUBSTRING(x,y,z)
Right$(x,y) RIGHT(x,y)
Rtrim$(x) RTRIM(x)
Space$(x) SPACE(x)
Str$(x) STR(x)
Ucase$( x) UCASE(x)
UPPER(x)
转换函数
VBA 函数 Transact-SQL
标量函数
------------------------------------------------
Ccur(x) CONVERT(money,x)
Cdbl(x) CONVERT(float,x)
Cint(x) CONVERT(smallint,x)
Clng(x) CONVERT(int,x)
Csng(x) CONVERT(real,x)
Cstr(x) CONVERT(varchar,x)
Cvdate(x) CONVERT(datetime,x)
日期函数
VBA 函数 Transact-SQL
标量函数
------------------------------------------------
Date(x) CONVERT(DATETIME,CONVERT(varchar,GETDATE(x)))
Dateadd("<access datepart>",x,y) DATEADD(<SQL Server datepart>, x, y)
Datediff("<access datepart>",x,y) DATEDIFF(<SQL Server datepart>, x, y)
Datepart("<access datepart>", x) DATEPART(<SQL Server datepart>, x)
Day(x) DATEPART(dd,x)
Hour(x) DATEPART(hh,x)
Minute(x) DATEPART(mi,x)
Month(x) DATEPART(mm,x)
Now(x) GETDATE(x)
Second(x) DATEPART(ss,x)
Weekday(x) DATEPART(dw,x)
Year(x) DATEPART(yy,x)
数学函数
VBA 函数 Transact-SQL
标量函数
------------------------------------------------
Int(x) FLOOR(x)
Sgn(x) SIGN(x)
Rnd(x) ROUND(x)
整理的其他函数
VBA 函数 Transact-SQL
标量函数
------------------------------------------------
replace replace
mid substring
nz isnull
iif case ... when ... then ...
switch case ... when ... then ...
请问在access中不支持标准SQL语句的SELECT CASE 语句吗? 比如:
老是报错说操作符丢失,应该可以的啊!哪位高手指点指点! |
SELECT CASE 不是标准的 SQL 语句,是 T-SQL ,MS SQL SERVER 的特例而已 在纯 access 环境可以将
改为
当然,你也可以用 IIF ,
但是在 ASP + MDB 或者 VB + MDB 这种环境你可以用
来完成 |