会计和数据库设计,存储借方和贷方金额

2024-01-14

问题:在下面的情况下,我是否应该将所有金额存储为正小数金额,然后将该金额标记为“借方”或“贷方”,而不是将借方存储为负金额,将贷方存储为正金额?


在我的数据库设计中,我将“借方”存储为负金额,将贷方存储为正金额。

现在,在报告中有时结果会出错,因为如果你这样做

总金额 = 金额-费用,如果提款金额为 100 美元,则费用为 1 美元。

你最终会得到 -$100-$1 = -$101,这是结果不正确!


正如您所发现的,对所有内容使用一列,然后对借方或贷方使用负数是行不通的。会计值不是标量——它们是包含枚举(借方或贷方)和定点十进制数(可以是正数或负数)的向量。

任何会计交易都必须包含相同数量的借方和贷方。如果没有,则这不是有效的交易。

同样,账户余额也是同样的向量。在任何时刻,会计系统中所有账户的总借方和总贷方必须彼此相等,否则就会出现问题。

另一种看待这个问题的方法是将会计价值视为一个复数,其中借方是实数,贷方是虚数。这意味着 4 个借方 + 3 个贷方 = 4 + 3i。这很明显表明您can't通过将虚数项折叠为负实数项来进一步简化 - 它不是相同的数轴轴。这与声称 4 + 3i = 4 - 3 相同。不是有效的数学。

如果数据库可以本地存储复数,那么复数实际上是存储会计数据的好方法,可能会消除程序员通常对会计产生的许多困惑,并且会产生各种有趣的属性。例如,平衡交易的相位角始终为 45 度,平衡账户集也是如此。但大多数数据库需要您在存储之前将复数分解为实数项和虚数项,并将这些项存储在不同的列中 - 在会计领域,这两列的名称分别是“借方”和“贷方”。

P.S.:我知道有些人确实用负数表示贷方,用正数表示借方,但这需要非常小心才能正确执行,而且很脆弱。每次接触任何账户时,你都必须跟踪它的正常余额——例如,由于资产账户有借方正常余额,那么你可以使用正数来增加它。但负债账户的正常余额为负,因此该账户价值的增加是负数。你不能在任何时候将这两个值相加——它们不是同一件事。借方是您所拥有的东西,而贷方是您所欠的东西。将两者放在数据库表的同一列中味道很糟糕。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

会计和数据库设计,存储借方和贷方金额 的相关文章

  • 帮助将二进制图像数据从 SQL Server 读取到 PHP 中

    我似乎无法找到将二进制数据从 SQL 服务器读取到 PHP 的方法 我正在开发一个项目 需要能够将图像直接存储在 SQL 表中 而不是文件系统上 目前 我一直在使用这样的查询 插入 myTable 文档 选择 从 OPENROWSET BU
  • 如何跳过 SSIS 数据流中的最后一行

    我在用FlatFile Source Manager gt Script COmponent as Trans gt OLEDB destination在我的数据流中 源从平面文件读取所有行 我想跳过更新数据库的最后一行 预告片记录 由于它
  • 没有特定表的MSSQL数据库备份

    我需要在 sql 中没有特定表的情况下进行计划备份 因为如果我对该表进行备份 将需要很长时间 我需要从备份中排除一张表 是否可以 如果没有该表 所有表和数据都应该位于数据库中 除了 PRIMARY 文件组之外 您还可以为该表设置一个单独的文
  • 将 Mdb 转换为 Sql Server

    如何使用 C 或其他语言将 mdb 访问文件转换为 sql server 我找到了一个article http channel9 msdn com forums TechOff 234266 Convert MS Access DB to
  • SQL 性能,使用 OPTION (FAST n)

    谁能告诉我在 SQL 查询中使用 OPTION FAST n 有什么缺点 比如我这么快就抓取了10万条记录 但这对SQL Server的其他进程有影响吗 我正在接近我的问题 我必须每周运行一次数据处理 因此 第一个结果会在 5 7 秒后出现
  • drupal 7 将实际内容存储在数据库中的哪里?

    我打开了 drupal 7 的数据库并在表中查找node node revisions and node types并且找不到 drupal 存储实际的位置body节点 内容 的 有人有线索吗 哦 我刚刚找到了 在 D7 中 他们实现了字段
  • EF4 和 SQL Server 2000

    我使用 EF4 和 SQL Server 2005 开发了我的网站 但当转移到临时站点时 发现他们使用 SQL Server 2000 现在我收到此错误 我认为该错误与 SQL Server 2000 有关 Incorrect syntax
  • Google BigQuery 底层架构

    所以我大约 10 分钟前才开始摆弄 Google BigQuery 我想知道是否有人知道他们用来存储数据的底层架构 例如 这只是他们自己的下一代 BigTable 基础设施吗 另外 他们在索引 索引重建等方面使用什么样的策略是否清楚 我只是
  • 查找 SQL Server 中表的 B 树高度

    由于数据库数据以B Tree的形式组织在8k页中 对于PK信息也是如此 数据库中的每个表都应该可以计算B Tree的高度 从而揭示达到某些数据需要多少次跳跃 由于行大小和 PK 大小都非常重要 因此很难计算 因为例如varchar 250
  • .net Framework 4.0 中地理 SQL Server 数据类型的 C# 等效项是什么?

    net web应用程序使用 net 4 0框架 我有一个存储过程 它接受 sql server 2008 R2 中的地理数据类型 我想将 C 代码中的数据插入 SQL Server 但我无法找到应在 C 中使用哪种与 SQL Server
  • LINQ to SQL:从位于不同服务器上的两个数据库获取记录

    我需要从两个不同的表中获取记录 数据库位于两个不同的 SQL Server 中 例如 销售数据库位于服务器 1 上 采购数据库位于服务器 2 上 销售和采购数据库都有一些表集 例如销售数据库中的 table1 和采购数据库中的 table2
  • ELMAH 错误和经典 Asp

    我们已经在我们拥有的 ASP NET MVC 网站上使用 ELMAH 进行错误日志记录 但我们的主网站仍然是经典的 asp 我已经开始为该网站创建错误处理 日志记录结构 但我认为它如果我们能够在所有应用程序中保持错误日志记录的一致性 那就太
  • T-SQL 中结果集的幂集(所有组合)

    我需要一个 t sql 代码来获取结果集的幂集 输入示例 ColumnName 1 2 3 Example Output one columns as nvarchar 1 2 3 1 2 1 3 2 3 1 2 3 输出集可能包含重复值
  • 查询链接服务器时登录失败

    我正在尝试在 SQL Server 中创建链接服务器 Create the link to server uranium EXEC master dbo sp addlinkedserver server N uranium srvprod
  • SSIS Master 包执行来自另一个项目的包

    我有多个SSIS项目 但其中的一些包是相同的 我想创建一个包含所有内容的项目generic包并将其他项目与他们的特定包一起保存 所以我的问题是 是否有可能有一个主包可以执行并将父变量传递给另一个项目的包 我是 SSIS 新手 如果这是一个明
  • mysql 中 INSERT 语句的计算列

    假设我想要一个表来记录其他表中的日期和列数 或者任何类型的数学 字符串连接等 CREATE TABLE log id INTEGER NOT NULL AUTO INCREMENT date DATETIME NOT NULL count
  • 如何在 SQL Server 2008 中使用 GUID 数据类型?

    我想使用建立一个员工表SQL SERVER 2008 在我的表中 我希望为每个员工提供一个 ID 我听说过GUID我有点明白它是一种数据类型 但我无法使用它 你能告诉我使用它的方法吗 顺便说一句 假设我想要这样的东西 CREATE TABL
  • 软删除最佳实践(PHP/MySQL)

    Problem 在处理产品和订单的 Web 应用程序中 我想维护前员工 用户 与他们处理的订单之间的信息和关系 我想维护过时产品和包含这些产品的订单之间的信息和关系 然而 我希望员工能够整理管理界面 例如删除前员工 过时的产品 过时的产品组
  • 关于 Cassandra 与 MySQL 的一些建议

    几天前我在这里问了一个问题 得到了一些非常好的答案 我正在考虑做一个带有个人资料 个人简介等的facebook风格的网站 并询问我是否应该使用mysql 答案是使用Cassandra 因为好多了 我只是问这是每个人都会建议的 只是我对mys
  • 如何将 .txt 文件中的数据转换为 xml? C#

    我在一个文本文件中有数千行数据 我想通过将其转换为更容易搜索的内容来轻松搜索 我希望 XML 或其他类型的大型数据结构 尽管我不确定它是否是最好的对于我的想法 每行的数据如下所示 第 31 册 托马斯 乔治 32 34 154 每本书都不是

随机推荐

  • 即使加载正确的 URL,也会出现 NotLoadingAPIFromGoogleMapsError

    我正在得到NotLoadingAPIFromGoogleMapsError即使使用正确的 URL 某些用户也会出现错误 哈巴狗语法 script type text javascript src https maps googleapis
  • 链接到 WebView 内的资源 - iPhone

    我的 iPhone 应用程序中有一个 webview 我的 Resources 文件夹中也有一些 html 文件 当我的应用程序加载时 我将资源中的页面加载到我的网络视图中 但是 我需要在我的 webview 中创建指向其他资源 例如图像或
  • 发送 svg 作为 prop 会被渲染为 [object Object]

    我正在尝试将 SVG 图像作为对象中的字段发送 使用物体作为道具 创建对象数组 import eagles from logo svg import packers from packers svg import panthers from
  • emacs 临时文件的奇怪 .gitignore 行为

    如果我编辑new file txt使用 emacs 会有临时文件 例如 new file txt and new file txt当文件未保存时 以及new file txt 保存时 我想排除这些文件 所以我写我的 gitignore像这样
  • C++:删除与自由和性能

    考虑 char p NULL free p or delete p 如果我使用会发生什么free and delete on p 如果一个程序执行时间很长 比如10分钟 有什么办法可以将其运行时间减少到5分钟吗 关于 new delete
  • 在同一模块中使用时,IntelliJ 无法找到生成的源

    我正在使用注释处理器谷歌的汽车工厂 https github com google auto tree master factory 我注释了SomeClass with AutoFactory并引用了new SomeClassFactor
  • 使用 txt 文件中的字符串填充数组

    Data txt 包含如下内容 猫 狗 老鼠 我想用该文件中的字符串填充一个数组 dico 0 Cat dico 1 Dog aso 我找到了这个 如何从 Swift 中调用 Objective C 的 NSArray 类方法 https
  • 我可以在提交 SQLite 事务后回滚该事务吗?

    SQLite 有没有办法在提交后基本上撤消最新事务 我想将数据库恢复到事务或保存点之前的状态 我查看了回滚命令 但看起来它仅限于回滚待处理的事务 Edit我可以创建一个名为 撤消 的保存点并等待在开始下一个操作之前释放它 或者在需要撤消它时
  • 单个查询中的 Wikipedia API 和 SPARQL

    我需要搜索其中包含一些特定单词的维基百科页面全文 为了改善结果 我想将结果限制为描述实体的页面的实例一个特定的实体 为了搜索全文 我可以使用 Wikipedia API 使用查询动作和搜索生成器 为了过滤给定实体的实例 我可以使用 Wiki
  • 如何检查包含路径下是否存在文件?

    您可以使用以下命令获取 PHP 中的当前包含路径get include path 我想知道检查是否可以包含该文件而不发出 PHP 错误的轻量级方法是什么 我正在使用 Yii 框架 我想要导入而不发出 PHP 错误 但我失败了 从 PHP 5
  • 如何避免以下代码中的Java.util.IllegalStateException?

    我有一个包含重复值的整数列表 我需要做的是找到重复的整数 添加它们的值 然后通过删除找到的重复项将结果添加到列表中 这是我正在做的事情 List
  • 如何设计从行创建动态列的查询

    我有数据 Table1 ID Name 1 n1 2 n2 3 n4 Table2 FID YearS Val 1 2008 Up 1 2009 Down 1 2010 Up 2 2000 Up 2 2001 Down 2 2002 Up
  • 如何在webview_flutter中设置Cookie?

    如何在初始化时在webview flutter中设置Cookie body WebView initialUrl index url javascriptMode JavascriptMode unrestricted onWebViewC
  • 将 CoffeeScript 与 Eclipse 集成?

    有没有一种方法可以集成 CoffeeScript 和 Eclipse 以便当我在一个窗口中编写 CoffeeScript 时 另一个窗口会将编译后的代码显示为 Javascript 我会等待答案 谢谢 我已经在我的项目中使用构建器和小型 s
  • 图像权限(不希望它们出现在图库中)

    我正在开发一个将图像存储在 Android data 文件夹中的应用程序 这些图片在画廊中可见 但我不想要这样 是否可以设置文件夹的权限 以便它们只能由应用程序本身使用 或者我应该将它们存储在另一个文件夹中 创建一个名为 nomedia在文
  • 我可以将 LESS 与 Xul 一起使用吗?

    我可以用吗LESS http lesscss org 与徐尔 有人已经一起使用过它们吗 我还没见过有人使用它 但没有什么能阻止你尝试 LESS 只是一个预处理器 它输出 CSS 文件 因此您可能会发现的问题应该与您可能需要使用的 Mozil
  • 当字符串包含多个双引号时,从字符串中提取 URL 的正则表达式失败?

    我正在使用正则表达式从字符串中提取 url 它大部分工作正常 var regex new Regex a href a
  • 在 android 中从 Shoutcast Url 播放

    我正在开发一个需要播放 Shoutcast 广播的应用程序 对于API我已经遵循了这个URL http wiki winamp com wiki SHOUTcast Radio Directory API 我成功地使用我的开发者 ID 获取
  • 在 CUDA 中使用 SIMD 实现位旋转运算符

    我知道 StackOverflow 不是用来向其他人询问代码的 但让我说一下 我正在尝试在 CUDA C 设备代码中实现一些 AES 函数 在尝试实现左字节旋转运算符时 我很不安地发现没有原生 SIMD 内在功能 所以我开始了一个幼稚的实现
  • 会计和数据库设计,存储借方和贷方金额

    问题 在下面的情况下 我是否应该将所有金额存储为正小数金额 然后将该金额标记为 借方 或 贷方 而不是将借方存储为负金额 将贷方存储为正金额 在我的数据库设计中 我将 借方 存储为负金额 将贷方存储为正金额 现在 在报告中有时结果会出错 因