`
cheney463
  • 浏览: 30374 次
  • 性别: Icon_minigender_1
  • 来自: 厦门
社区版块
存档分类
最新评论

bigint在数据库中以及在java中的转化应用

    博客分类:
  • HTML
阅读更多

bigint 数据

  bigint为Transact-SQL的系统数据类型。

  SQL Server在整数值超过 int 数据类型支持的范围时,将使用 bigint 数据类型。为了实现兼容性,int 数据类型仍是 Microsoft SQL Server 2005 中的主要整数数据类型。

  除非明确说明,否则那些接受 int 表达式作为其参数的函数、语句和系统存储过程都不会改变,从而不会支持将 bigint 表达式隐式转换为这些参数。因此,当 bigint 值在 int 数据类型支持的范围内时,SQL Server 才将 bigint 隐式转换为 int。如果 bigint 表达式包含了一个在 int 数据类型支持范围之外的值,就会在运行时出现转换错误。

我们可以将从数据库中读出的bigint类型的数据转化成字符串的形式进行比较。

 

Transact-SQL 函数中的 bigint

  尽管 SQL Server 有时会将 tinyint 或 smallint 值提升为 int 数据类型,但不会自动将 tinyint、smallint 或 int 值提升为 bigint 数据类型。例如,如果参数表达式的数据类型是 tinyint 或 smallint,某些聚合函数会把返回值的数据类型提升为 int,而这些聚合函数将不会返回 bigint 数据类型的值,除非参数表达式本身就是 bigint 类型。

  当指定 bigint 参数并且返回值也是 bigint 类型时,可以使用下列 Transact-SQL 函数。

  ABS FLOOR POWER AVG IDENTITY RADIANS CEILING MAX

  ROUND COALESCE MIN SIGN DEGREES NULLIF SUM

  当引用 bigint 列或变量,但不希望返回值也为 bigint 数据类型时,可以使用下列函数。

  @@IDENTITY ISNULL VARP COL_LENGTH ISNUMERIC

  DATALENGTH STDEV[P]

         

  SQL Server 提供下列专门使用 bigint 值的函数。

  COUNT_BIG

  当对组中的项目计数时,如果值超过 int 数据类型支持的范围,并且返回 bigint 数据类型的值,则使用此函数。除了返回的数据类型外,COUNT_BIG 类似于 COUNT 函数。

  ROWCOUNT_BIG

  当对执行的最后一条语句所影响的行数进行计数,而且值超过 int 数据类型支持范围时,使用此函数。除了 ROWCOUNT_BIG 返回 bigint 数据类型外,此函数类似于 ROWCOUNT 函数。

其他 Transact-SQL 元素中的 bigint

  CAST 和 CONVERT 子句支持 bigint。这些子句对 bigint 使用与其他整数数据类型相同的转换规则。在数据类型优先表中,bigint 数据类型位于 int 之上和 smallmoney 之下。有关 bigint 转换的详细信息,请参阅 CAST 和 CONVERT (Transact-SQL)。

  在使用 CASE 表达式时,如果 result_expression 或可选的 else_result_expression 的值是 bigint 数据类型,将得到 bigint 类型的结果。

  可以在 Transact-SQL 语句中指定了整数数据类型的所有语法位置使用 bigint 数据类型:

  * ALTER PROCEDURE

  * ALTER TABLE

  * CREATE PROCEDURE

  * CREATE TABLE

  * DECLARE 变量

  此外,SQL Server 目录组件报告有关 bigint 列的信息。

指定 bigint 常量

  在 int 数据类型支持范围之外的数字常量仍被解释为 numeric,这些数字的小数位数为 0,其精度为足以保存所指定的值。例如,常量 3000000000 被解释为 numeric。这些 numeric 常量被隐式转换为 bigint,并可对 bigint 列和变量赋值:

  CREATE TABLE BigintTable (ColA bigint)

  INSERT INTO BigintTable VALUES (3000000000)

  SELECT *

  FROM BigintTable

  WHERE ColA = 3000000000

  还可以将常量转换为 bigint:

  CAST(3000000000 AS bigint)

  若要将 bigint 值放入 sql_variant 列中,请使用此方法:

  CREATE TABLE VariantTable (ColA sql_variant)

  -- Inserts a value with a numeric base data type.

  INSERT INTO VariantTable VALUES (3000000000)

  -- Inserts a value with a bigint base data type.

  INSERT INTO VariantTable VALUES ( CAST(3000000000 AS bigint) )

0
0
分享到:
评论

相关推荐

    sqlserver数据库类型对应Java中的数据类型

    在 Java 中,对数据库的操作需要通过 JDBC(Java Database Connectivity)来实现,而在 JDBC 中,需要将 SQL Server 的数据类型映射到 Java 中的数据类型。下面将详细介绍 SQL Server 数据库类型对应 Java 中的数据...

    Java数据类型与各数据库类型映射一览表

    例如,BIGINT 数据类型在 IBM DB2 中对应的数据库类型是 BIGINT,在 Oracle 中对应的是 NUMBER(38, 0),在 Sybase 中对应的是 BIGINT,在 SQL Server 中对应的是 INT8。在 Java 中,这种数据类型对应的对象类型是 ...

    Sybase数据库类型转Java类型

    在进行Java编程并与Sybase数据库交互时,我们需要知道这些类型如何转换为Java中的数据类型。 1. **整数类型**: - Sybase的`smallint`通常映射到Java的`short`。 - `integer`对应Java的`int`。 - `bigint`则对应...

    Java的long和bigint长度对比详解

    在本文中,我们将详细介绍 Java 中的 long 和 bigint 的长度对比。 long 数据类型 在 Java 中,long 是一种基本数据类型,它可以表示一个 64 位的整数。long 类型的值大小范围在 -9,223,372,036,854,775,808 到 9,...

    数据库——清华大学PPT

    在Java 2平台企业版(J2EE)的框架下,数据库连接是构建分布式应用程序的关键部分,它涉及到客户端、服务器端以及多层架构的设计。 Java数据库连接(JDBC)是Java语言中用来规范应用如何访问数据库的标准API。JDBC...

    Mysql、orcale 中的数据类型与java中的数据类型对应表.pdf

    在数据库应用开发中,理解数据类型的对应关系非常重要。本文将详细介绍 MySQL 和 Oracle 中的数据类型与 Java 中的数据类型对应关系。 Oracle 中的 Number 类型可以分为两种:Number 和 Number(p,s)。其中 Number ...

    mysql数据库武洪萍版第四章习题与答案.docx

    在习题 12 中,我们可以看到关系查询的应用,例如查找由张劲老师执教的数据库课程的平均成绩、最高成绩和最低成绩。 13、关系查询:在数据库中,关系查询是指从多个表中检索数据。在习题 13 中,我们可以看到关系...

    Java数据类型和MySql数据类型对应一览

    在 Java 中,数字类型对应的是 java.lang.Integer、java.lang.Long、java.lang.Float、java.lang.Double 等类型。在 MySql 中,数字类型对应的是 INTEGER、BIGINT、FLOAT、DOUBLE 等类型。其中,INTEGER 类型用于...

    各种数据库数据类型对映.doc

    在数据库系统中,数据类型是用于定义存储在表中的列或变量的数据格式。...同样,如果数据库返回的是`DATE`类型,那么在Java中应该用`java.sql.Date`来接收。这种映射关系对于数据库操作的正确性和性能有着直接影响。

    java与Mysql之间的数据库连接

    在Java中,可以使用SQL语句进行数据库操作,如创建数据库(CREATE DATABASE)、选择数据库(USE)、删除数据库(DROP DATABASE)、创建表(CREATE TABLE)、删除表(DROP TABLE)、查看表结构(DESCRIBE)、插入记录...

    java hibernate 数据库 类型对比

    - Java中的`int`或`Integer`对应Hibernate的`int/integer`,在数据库中一般映射为`INTEGER`,占用4个字节,范围是-2^31到2^31-1。 - `long`或`Long`映射为`BIGINT`,占8个字节,适合存储更大的整数,范围是-2^63到...

    实验训练1 在MySQL中创建数据库和表.docx

    MySQL是最流行的开源关系数据库管理系统之一,广泛应用于Web开发和企业级应用中。本篇文章将对MySQL数据库管理的基础知识进行详细讲解,从安装到管理,涵盖创建数据库、创建表、管理表结构、管理数据库等多方面的...

    SQL Server数据库与Java类型对照.doc

    在进行数据库开发时,尤其是在使用 SQL Server 作为后端数据库并与 Java 应用程序进行交互时,了解 SQL Server 的数据类型与 Java 数据类型的对应关系非常重要。这种对应关系有助于确保数据在数据库与应用程序之间...

    MySql于Java数据类型对应列表

    本文将详细介绍MySQL中的各种数据类型及其在Java中的对应类型,并解释这些类型的具体含义以及它们在实际应用中的作用。 #### 数据类型对照表解析 ##### 1. VARCHAR (可变长度字符串) **显示长度:** L+N **数据库...

    数据库应用技术:数据类型.pptx

    数据库应用技术是指在数据库系统中应用各种技术以实现数据的存储、管理和检索。其中,数据类型是数据库系统的基础之一,对于数据库系统的设计和实现具有重要意义。 数据类型是指在数据库系统中用于存储数据的基本...

    java和数据库编码规范

    本文将详细解读《QXPT2.0开发编码规范总述》,涵盖系统架构、代码分层、命名规范以及数据库设计等方面,旨在帮助开发人员遵循一致的编码标准。 #### 二、系统架构与代码分层 ##### 1. 整体架构 QXPT2.0系统采用...

    DB2数据库中的各数据类型

    理解并熟练运用这些数据类型对于在DB2数据库中创建表、存储和操作数据至关重要。选择正确的数据类型可以优化存储效率,保证数据的正确性,并且有助于提升查询性能。在设计数据库时,需要根据实际需求来选择合适的...

    研发部数据库应用开发培训.ppt

    在数据库应用开发中,掌握SQL语言是至关重要的。SQL(Structured Query Language)是用于管理和处理关系数据库的标准编程语言。在本次研发部的培训中,我们将深入探讨SQL语言的概要,如何解读数据库设计图,以及如何...

Global site tag (gtag.js) - Google Analytics