`
lengyimeng
  • 浏览: 26954 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

sqlserver和sybase数据库插入表数据返回主键的不同

阅读更多
做个记录,以后碰到了也可以看看。
public int addUserLog(final UserLog userLog) {
if(userLog==null) return -1;
if(JdbcUtil.isSybaseIQ){
int key = -1;
try{
String dateStr = UserLogUtil.getDateStr(new Date());
String values = userLog.getUserId()+","+userLog.getOperateType()+",'"+
userLog.getDescription()+"','"+dateStr+"'";
final String sql = "insert into ps_user_log (userId,operateType,description,createTime) values("+values+")";
Connection conn = this.getConnection();
Statement objStatement = conn.createStatement();
objStatement
.executeUpdate(sql, Statement.RETURN_GENERATED_KEYS);
ResultSet objResultSet = objStatement.getGeneratedKeys();
if (objResultSet.next()) {
key = objResultSet.getInt(1);
}
return key;
}catch (Exception e) {
logger.error("addUserLog error : ", e);
e.printStackTrace();
return key;
}
}else{
try{
final String sql = "insert into ps_user_log (userId,operateType,description,createTime) values(?,?,?,?)";

PreparedStatementCreator psc = new PreparedStatementCreator() {
public PreparedStatement createPreparedStatement(Connection conn)
throws SQLException {
PreparedStatement ps=JdbcUtil.createPrepareStatement(conn,sql);
ps.setInt(1, userLog.getUserId());
ps.setInt(2, userLog.getOperateType());
ps.setString(3, userLog.getDescription());

ps.setDate(4, new java.sql.Date(System.currentTimeMillis()));
return ps;
}
};
KeyHolder kh = new GeneratedKeyHolder();
return getJdbcTemplate().update(psc, kh);
}catch(Exception e){
e.printStackTrace();
return -1;
}
}
}
顺便再提一句,sybase数据库中不能保存Boolean类型的数据,必须转换成int值,sqlserver则可以,但其保存在数据库的值也是按照int型来保存的,1:true 0:false
分享到:
评论

相关推荐

    Sybase SQL Server控制数据库完整性的技术与实践.pdf

    定义域完整性和关系完整性是数据库设计和开发的重要方面, Sybase SQL Server 提供了多种方法来定义域完整性和关系完整性,以确保数据库的正确性和相容性。 关键词:Sybase SQL Server、数据库完整性、参照完整性、...

    sqlserveR第1章_SQL_Server_数据库基础

    ### SQL Server 数据库基础知识点详解 #### 一、SQL Server 概述 - **SQL Server 定义**:SQL Server 是由微软公司开发的一款高性能的客户端/服务器架构的关系型数据库管理系统(DBMS)。它主要用于存储、管理和...

    SQLserver2016-数据库系统概述.pptx

    6. 常见的数据库管理系统:除了SQL Server 2016,还有Access、Oracle、Sybase、MySQL、MongoDB、Redis和SQLite等,它们分别适用于不同的应用场景和数据需求。 总结来说,SQL Server 2016是基于关系模型的数据库管理...

    sqlserver数据库

    SQL Server数据库是一款由微软公司开发的关系型数据库管理系统,它具有丰富的特性和功能,适用于各种规模的企业和项目。作为一款强大的数据库系统,SQL Server的核心特点包括: 1. **真正的客户机/服务器体系结构**...

    SYBASE数据库的创建

    在IT领域,数据库是存储和管理数据的核心工具,而SYBASE数据库系统因其高效、稳定和安全的特性,被广泛应用于金融、电信等对数据处理有高要求的行业。本篇文章将详细阐述SYBASE数据库的创建过程,帮助读者理解并掌握...

    SQLServer数据库基础课程.ppt

    - SQL Server是微软公司开发的关系数据库管理系统,最初与Sybase和Ashton-Tate合作,后来不断更新,例如SQL Server 6.5和后续版本。 - 它支持T-SQL(Transact-SQL),这是SQL的一个扩展,用于处理SQL Server数据库...

    sybase中文资料-四部分

    它包含数据查询、数据更新、数据插入和数据删除四大功能。熟练掌握SELECT语句,能够高效地检索所需数据;INSERT、UPDATE和DELETE则用于数据的增删改操作。此外,了解JOIN、GROUP BY、HAVING等高级SQL特性,对处理...

    sqlserver笔记.pdf

    SQL Server的SQL命令包括创建数据库(`CREATE DATABASE`)、删除数据库(`DROP DATABASE`)、切换数据库(`USE`)、建表、修改表结构、删除表、添加约束、删除约束、插入数据等。例如,创建一个表可以使用以下语句:...

    sqlserver笔记.docx

    常见的SQL命令包括创建数据库(`CREATE DATABASE`)、删除数据库(`DROP DATABASE`)、切换数据库(`USE DATABASE`)、创建表、修改表结构、删除表、插入数据(`INSERT INTO`)、更新数据(`UPDATE`)和删除数据(`...

    SYBASE数据库管理

    bcp是用于批量复制数据到SYBASE数据库或从数据库中批量复制数据的工具。它支持多种格式的数据文件,并且可以用于数据导入和导出操作。 #### 管理登录和数据库用户 **4.1 增加登录账号** - 增加登录账号是通过...

    sybase资料

    用户可以通过SQL进行数据查询、插入、更新和删除操作。`数据库要求.doc`可能包含对创建和管理数据库的基本要求,包括硬件配置、操作系统支持以及安装步骤等。 二、Sybase SQL Server Sybase SQL Server是Sybase的...

    网管基础知识(sybase).pdf

    本文档主要介绍了Sybase数据库的基础知识,包括数据库的基本框架、概念性分析、关系数据库的概念、Sybase适应的组件体系结构以及Sybase SQL Server的基本对象等内容。 ### 关系数据库的概念 关系数据库是一种基于...

    Oracle数据库基础教程-参考答案

    除了Oracle,还有IBM的DB2、Sybase和Microsoft SQL Server。每个都有其特定的平台支持和特性,如DB2基于System R,SQL Server与Sybase兼容。 8. 应用系统结构: 常见的Oracle应用架构有客户机/服务器、浏览器/...

    oracle数据库介绍1.ppt

    Oracle数据库在关系型数据库领域有着广泛的应用,与其他知名数据库如IBM DB2、SQL Server、SyBase、Informix等竞争。在数据建模过程中,Oracle支持实体-关系模型,帮助用户将现实世界的实体和关系转化为可操作的...

    SQL数据库语言入门基础教程

    尽管各个流行的数据库系统如Oracle、Sybase、Microsoft SQL Server、Access等可能有自己的扩展,但基本的SQL命令,如SELECT、INSERT、UPDATE、DELETE、CREATE、DROP等,都能在大多数系统中实现常见数据库操作。...

    Datafactory工具介绍

    Numeric 类型的数据产生方式有六种:从数据表插入数据,从数据库插入数据,用表达式产生数据,插入连续的值,插入随机值,插入常量。 Text 类型的数据产生方式也有六种:从数据表中插入数据,从数据库中插入数据,...

    SQL数据库原理课设.docx

    **数据库管理系统(DBMS)**\n - 学习目标包括熟练使用Oracle、SQL Server、MySQL、DB2、Sybase和PostgreSQL等常见的数据库管理系统。\n\n6. **编程语言与数据库交互**\n - 学生还需要掌握使用VisualC++(MFC)、C#、...

Global site tag (gtag.js) - Google Analytics