首页 数据库 mysql教程 Access、SQLServer、Oracle常见SQL语句应用区别

Access、SQLServer、Oracle常见SQL语句应用区别

Jun 07, 2016 pm 03:19 PM
access oracle sql sqlserver 常见

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中)。

 

 

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

oracle怎么循环创建游标 oracle怎么循环创建游标 Apr 12, 2025 am 06:18 AM

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

oracle动态sql怎么创建 oracle动态sql怎么创建 Apr 12, 2025 am 06:06 AM

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

如何利用Debian Apache日志提升网站性能 如何利用Debian Apache日志提升网站性能 Apr 12, 2025 pm 11:36 PM

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

oracle怎么使用触发器 oracle怎么使用触发器 Apr 11, 2025 pm 11:57 PM

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

oracle数据库怎么停止 oracle数据库怎么停止 Apr 12, 2025 am 06:12 AM

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

oracle表名怎么改 oracle表名怎么改 Apr 11, 2025 pm 11:54 PM

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

如何配置Debian Apache日志格式 如何配置Debian Apache日志格式 Apr 12, 2025 pm 11:30 PM

本文介绍如何在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提交了怎么回退 oracle提交了怎么回退 Apr 11, 2025 pm 11:51 PM

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

See all articles