सब कुछ के लिए एक कॉलम का उपयोग करना और फिर डेबिट या क्रेडिट के लिए ऋणात्मक संख्याओं का उपयोग करना काम नहीं करता है, जैसा कि आपने पाया है। लेखांकन मान स्केलर नहीं हैं - वे वैक्टर हैं जिनमें एक एनम (डेबिट या क्रेडिट) और एक निश्चित-बिंदु दशमलव संख्या (जो सकारात्मक या नकारात्मक हो सकती है) होती है।
किसी भी लेखांकन लेनदेन में डेबिट और क्रेडिट की समान संख्या होनी चाहिए। अगर ऐसा नहीं होता है, तो यह एक वैध लेनदेन नहीं है।
इसी तरह, एक खाता शेष भी उसी प्रकार का वेक्टर होता है। किसी भी समय, एक लेखा प्रणाली में सभी खातों में कुल डेबिट और कुल क्रेडिट एक दूसरे के बराबर होना चाहिए, अन्यथा कुछ टूट गया।
इसे देखने का एक और तरीका यह है कि लेखांकन मूल्य को एक जटिल संख्या के रूप में माना जाए, जहां डेबिट वास्तविक होते हैं और क्रेडिट काल्पनिक होते हैं। इसका मतलब है कि 4 डेबिट + 3 क्रेडिट =4 + 3i। इससे यह स्पष्ट हो जाता है कि आप नहीं काल्पनिक पद को ऋणात्मक वास्तविक पद में संक्षिप्त करके इसे और सरल बनाएं -- यह समान संख्या रेखा अक्ष नहीं है। यह दावा करने जैसा ही होगा कि 4 + 3i =4 - 3. मान्य गणित नहीं है।
यदि कोई डेटाबेस जटिल संख्याओं को मूल रूप से संग्रहीत कर सकता है, तो जटिल संख्याएँ वास्तव में लेखांकन डेटा संग्रहीत करने का एक अच्छा तरीका होगा, संभवतः बहुत सारे भ्रम को दूर करेगा जो प्रोग्रामर आमतौर पर लेखांकन के बारे में रखते हैं, और सभी प्रकार के दिलचस्प गुणों को जन्म देंगे। उदाहरण के लिए, एक संतुलित लेन-देन में हमेशा 45 डिग्री का एक चरण कोण होता है, जैसा कि खातों का एक संतुलित सेट होता है। लेकिन अधिकांश डेटाबेसों को भंडारण से पहले जटिल संख्या को उसके वास्तविक और काल्पनिक शब्दों में विघटित करने की आवश्यकता होती है, और उन शब्दों को अलग-अलग स्तंभों में संग्रहीत किया जाता है - लेखांकन की दुनिया में, उन दो स्तंभों के नाम क्रमशः "डेबिट" और "क्रेडिट" होते हैं।
पुनश्च:मुझे पता है कि कुछ लोग क्रेडिट के लिए नकारात्मक और डेबिट के लिए सकारात्मक उपयोग करते हैं, लेकिन यह सही करने के लिए बहुत सावधानी बरतता है, और नाजुक है। जब भी आप किसी खाते को स्पर्श करते हैं तो आपको उसके सामान्य शेष पर नज़र रखनी होती है -- उदाहरण के लिए, चूंकि किसी परिसंपत्ति खाते में डेबिट सामान्य शेष है, तो आप इसे बढ़ाने के लिए एक धनात्मक संख्या का उपयोग कर सकते हैं। लेकिन एक देयता खाते में ऋणात्मक सामान्य शेष राशि होती है, इसलिए उस खाते के मूल्य में वृद्धि एक ऋणात्मक संख्या होती है। आप किसी भी समय उन दो मानों को एक साथ नहीं जोड़ सकते -- वे एक ही चीज़ नहीं हैं। एक डेबिट वह है जो आपके पास है, जबकि एक क्रेडिट वह है जो आप पर बकाया है। डेटाबेस तालिका में दोनों को एक ही कॉलम में रखने से बदबू आती है।