Access、SQLServer、Oracle常见SQL语句应用区别
Access、SQLServer、Oracle 常见 SQL 语句 应用 区别 关劲松 PMP 如果要兼容Access、SQL Server、Oracle三个数据库版本;我们在编写SQL 语句 的过程中,尽量使用一些通用的 语句 ,但还是有些方面有些 区别 避免不了,现简单总结一下。 以下A代表Access,S代
Access、SQLServer、Oracle常见SQL语句应用区别
关劲松 PMP
如果要兼容Access、SQL Server、Oracle三个数据库版本;我们在编写SQL语句的过程中,尽量使用一些通用的语句,但还是有些方面有些区别避免不了,现简单总结一下。
以下A代表Access,S代表SQL Server,O代表Oracle
1、取当前系统时间
A:Select Now()
S:Select Getdate()
O:Select Sysdate From Dual
2、连接字符串
A:&
S:+
O:||
3、字符串函数(截取字符串、大写、小写、查找字符串位置)
A:Mid、UCase、LCase、InStr
S:SubString、Upper、Lower、CharIndex
O:SubStr、Upper、Lower、InStr
4、判断取值语句
A:IIF
S:Case When Then
O:Decode
5、时间字段
A:要用#号分隔,或者转换为日期
SELECT * FROM Books WHERE RegDate = #2007-5-1# 或
SELECT * FROM Books WHERE RegDate = CDate(’2007-5-1′)
S:可以直接用''
SELECT * FROM Books WHERE RegDate = ‘2007-5-1′
O:To_Date
SELECT * FROM Books WHERE RegDate=To_Date('2007-05-01','yyyy-mm-dd')
6、数据类型转换
A:CStr,CInt,CDate
S:Convert,CAST
O:To_Char,To_Number,To_Date
7、Inser Into …..Select …From 语句
Insert Into a(ii,jj,kk) (Select ii,jj,kk From b)
这样的语句,在SQL Server以及Oracle中都不会有错,但在Access中会报:INSERT INTO 语句的语法错误。Access应该把后面Select语句的括号去掉,如下:
Insert Into a(ii,jj,kk) Select ii,jj,kk From b
同时这样写在SQL Server和Oracle中都不会有错
8、关键字
有些字母在Access,SQL Server中是关键字,需要用[ ]界定可解决问题,例如:at,name
9、别名
SQL Server和Oracle中字段起别名时as可以省略,Access不能
10、表名前缀
Select *,1 From A
这样的语句在Access,SQL Server中不会有错,但在Oracle中是不行的,必须要写成这样:
Select A.*,1 From A
11、如果语句中有:(冒号),例如有时间字段的查询:CalcDate=#2008-05-01 11:00:00#,在Access中一般会出现如下错误:不正常地定义参数对象。提供了不一致或不完整的信息。将相应
Query的ParamCheck 设为False即可。
12、Access中的逻辑值在库中为-1和0,而SQL Server中为1和0,所以写BoolField = 1这样的语句有兼容性问题,应该改为BoolField 0
13、Access的varchar(文本)型最大只有255,所以如果一个文本型字段大于255时,最好定义成备注型(Access中)或text型(SQL Server中)。

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

热门话题

Oracle 中,FOR LOOP 循环可动态创建游标, 步骤为:1. 定义游标类型;2. 创建循环;3. 动态创建游标;4. 执行游标;5. 关闭游标。示例:可循环创建游标,显示前 10 名员工姓名和工资。

可以通过使用 Oracle 的动态 SQL 来根据运行时输入创建和执行 SQL 语句。步骤包括:准备一个空字符串变量来存储动态生成的 SQL 语句。使用 EXECUTE IMMEDIATE 或 PREPARE 语句编译和执行动态 SQL 语句。使用 bind 变量传递用户输入或其他动态值给动态 SQL。使用 EXECUTE IMMEDIATE 或 EXECUTE 执行动态 SQL 语句。

本文将阐述如何通过分析Debian系统下的Apache日志来提升网站性能。一、日志分析基础Apache日志记录了所有HTTP请求的详细信息,包括IP地址、时间戳、请求URL、HTTP方法和响应代码等。在Debian系统中,这些日志通常位于/var/log/apache2/access.log和/var/log/apache2/error.log目录下。理解日志结构是有效分析的第一步。二、日志分析工具您可以使用多种工具分析Apache日志:命令行工具:grep、awk、sed等命令行工具可

Oracle 中的触发器是用于在特定事件(插入、更新或删除)触发后自动执行操作的存储过程。它们用于各种场景,包括数据验证、审核和数据维护。创建触发器时,需要指定触发器名称、关联表、触发事件和触发时间。有两种类型的触发器:BEFORE 触发器在操作之前触发,而 AFTER 触发器在操作之后触发。例如,BEFORE INSERT 触发器可确保插入行的年龄列不为负。

要停止 Oracle 数据库,请执行以下步骤:1. 连接到数据库;2. 优雅关机数据库(shutdown immediate);3. 完全关机数据库(shutdown abort)。

重命名 Oracle 表名的两种方法:使用 SQL 语句:ALTER TABLE <旧表名> RENAME TO <新表名>;使用 PL/SQL 语句:EXECUTE IMMEDIATE 'ALTER TABLE ' || :old_table_name || ' RENAME TO ' || :new_table_name;

本文介绍如何在Debian系统上自定义Apache的日志格式。以下步骤将指导您完成配置过程:第一步:访问Apache配置文件Debian系统的Apache主配置文件通常位于/etc/apache2/apache2.conf或/etc/apache2/httpd.conf。使用以下命令以root权限打开配置文件:sudonano/etc/apache2/apache2.conf或sudonano/etc/apache2/httpd.conf第二步:定义自定义日志格式找到或

Oracle 提供了以下回退已提交数据库更改的方法:使用 ROLLBACK 语句立即撤销所有未提交的更改。通过数据库管理工具界面操作。使用 Oracle Flashback 技术返回到特定时间点并还原数据,需启用闪回日志记录。
