1、对null和空字符串的处理
Oracle:没有空字符串,如果你将某值赋值为空字符,oracle会自动存成null
Sybase: 区别空字符串和null
如果想查询某个字段不为空的数据
sybase可以写为:
select * from table where (columA is not null and columA <>'')
但是oracle如果这样写,是任何值都查询不到的。因为不管culumA是否为null,
columA <>''或者columA='' 永远返回false,
可以这样写:select * from table where columA is not null
总结在oracel中可以取消对空串的考虑。特别是兼容两种数据库的程序应注意这一点。
另:A<>'delete' 这里不包含null,应改写为 (A<>'delete' or A is null)
2、update select
在 SQL 中,表连接(left join、right join、inner join 等)常常用于 select 语句,其实在 SQL 语法中,这些连接也是可以用于 update 和 delete 语句的,在这些语句中使用 join 还常常得到事半功倍的效果。
Update T_OrderForm SET T_OrderForm.SellerID =B.L_TUserID
FROM T_OrderForm A LEFT JOIN T_ProductInfo B ON B.L_ID=A.ProductID
oracle:
UPDATE A SET (A1, A2, A3) = (SELECT B1, B2, B3 FROM B WHERE A.ID = B.ID) WHERE ID IN (SELECT B.ID FROM B WHERE A.ID = B.ID)
sybase:
UPDATE table_A SET a.A1 = b.B1, a.A2 = b.B2, a.A3 = b.B3 FROM table_A a JOIN table_B b ON a.ID = b.ID and a.name='XXX' and b.B2='XXX'
分享到:
相关推荐
两者都支持标准的SQL语法,如SELECT、INSERT、UPDATE和DELETE等基本操作,但在特定函数和语法细节上有所区别。 1. **日期和时间处理**: - Oracle提供`SYSDATE`函数获取当前日期,而SQL Server使用`GETDATE()`。 ...
Sybase ASE的数据库架构与Oracle有一些不同之处,了解这些区别对于成功迁移至关重要。主要方面包括: - **SQL语言**:虽然两种数据库都支持标准SQL,但在特定语法和功能上有显著差异。 - **物理存储**:Sybase ASE...
Oracle、SQLServer、Symfoware、DB2、SYBASE数据库对比语法及函数
Sybase ASE与Oracle在SQL语言方面存在一定的差异,包括关键字、语法结构等方面。了解这些差异对于顺利迁移至关重要。 ##### 3.2 数据库与物理存储 Sybase ASE提供了不同的数据库组织方式,如表空间(tablespace)...
本文将详细介绍如何在MySQL、Oracle以及Sybase三种主流数据库中使用SQL语句来完成两列数据的合并操作。 ### 1. MySQL中的两列合并 在MySQL中,可以使用`CONCAT()`函数或者连接运算符`+`来合并两个字段。但是,需要...
`mysql`是开源且流行的关系数据库,其语法与Oracle和Sybase有所不同。转换过程中,需要注意的是MySQL不支持`identity`字段,通常会用`auto_increment`替代。此外,还有一些其他的数据类型和约束的转换规则。 `log4j...
SQL语法的灵活性让它可以与各种数据库程序协同工作,例如MS Access、DB2、Informix、Microsoft SQL Server、Oracle、Sybase以及MySQL等。这些数据库系统都支持SQL标准,但也各自拥有特定的私有扩展。 RDBMS(关系型...
Sybase SQL语法与SQL Server相似,支持ASE(Adaptive Server Enterprise)的Transact-SQL。在Sybase中,使用`SET PLAN`可以查看和控制执行计划,而`EXEC sp_configure`则可以调整服务器配置选项。 这些数据库系统在...
在VB(Visual Basic)编程环境中,连接到不同的数据库系统,如Sql Server, Oracle, Sybase和Access,是一项常见的任务。这些数据库系统广泛应用于各种规模的企业和项目中,以存储和管理数据。以下将详细介绍如何使用...
Oracle与Sybase作为两款主流的关系型数据库管理系统,虽然都遵循SQL-92标准,但在实现方式上存在较大差异。因此,在进行Oracle到Sybase的数据库移植过程中,开发者会遇到多种编程细节上的差异。为了帮助开发人员更...
包括上面提到的所有SQL语法 6、SQL文件拖放,然后反向分析 7、数据库视图创建和重建(目前仅支持Oracle,Sybase,MS_SQL) 8、附加Delphi 5和Delphi 6的控件包,支持Delphi 5,6开发环境 9、SQL语句智能换行 ...
1. SQL Server与Oracle:SQL Server是由微软公司开发的关系型数据库管理系统,而Oracle则是由甲骨文公司提供的业界领先的企业级数据库解决方案。两者在语法、管理、性能优化等方面都有所不同,因此迁移过程中需要...
Oracle和Sybase是两种不同类型的数据库管理系统,它们在语法、函数和特性上有许多区别。SwisSQL能够帮助用户克服这些差异,提供了一种方便的方式来映射Oracle的存储过程到Sybase的等效结构。存储过程是数据库中预...
数据类型的转换是Oracle向Sybase迁移过程中首先需要解决的问题之一。不同数据库系统间的数据类型并不总是完全一致,因此必须进行适当的映射以确保数据完整性和准确性。以下是一些常见的数据类型及其转换方式: - **...
绝大多数流行的关系型数据库管理系统,如Oracle,Sybase,Microsoft SQL Server,Access等都采用了SQL语言标准。虽然很多数据库都对SQL语句进行了再开发和扩展,但是包括Select,Insert,Update,Delete,Create,以及Drop...
ArcGIS 之 SQL 篇 ArcGIS 是一种基于关系数据库管理系统(RDBMS)的地理信息系统,它使用结构化查询语言(SQL)来存储、操作和检索存储在关系数据库中的数据。ArcGIS 中的 SQL 语句主要应用在属性查询中,遵循...
### 电子文档 SQL语法基础学习知识点详述 #### SQL语法基础概述 SQL,全称Structured Query Language,即结构化查询语言,是美国国家标准协会(ANSI)制定的一种标准计算机语言,主要用于管理和操作关系型数据库...
5. SQL不同数据库的特定语法:SQL语法在不同数据库管理系统(DBMS)间略有不同,如Oracle、Microsoft SQL Server、MySQL等,因此在学习时需要注意各自的特有命令和函数,以及它们的兼容性和最佳实践。文档中提到了...
开发者需要设置正确的数据库连接字符串,并利用Oracle的SQL语法进行数据操作。 **数据库连接** 在VB6中,使用ADO是连接到Sybase或Oracle的常见方法。ADO提供了一组COM对象,如Connection、Command、Recordset等,...