mysql - 如何在MySQL数据库中存储Paypal小数金额

标签 mysql sql paypal

嗨,在 Paypal 中,交易后金额应存储在数据库中。但是小数金额未存储在数据库中,它会转换为整数。我想将其作为十进制数存储在数据库中。

例如:amt = 0.5 它在 MySQL 数据库中存储为 1.我想将其存储在数据库中为 0.5

任何人都可以帮助我如何进行查询。

提前致谢。

我是 Paypal 和 MySQL 的新手。如果我的问题有任何错误,请 fg。

这是我的代码

       <?php
        define("DB_HOST", "localhost");
          define("DB_USERNAME", "root");
          define("DB_PASSWORD", "");
           define("DB_DATABASE", "test");
          $connect = mysql_connect(DB_HOST, DB_USERNAME, DB_PASSWORD) or die("Database Connection Error");
          mysql_select_db(DB_DATABASE) or ("Database Selection Error");

          session_start();
         $uid = $_SESSION['uid'];
          $username=$_SESSION['username'];

          $item_no = isset($_GET['item_number']) ? $_GET['item_number'] : null;
           $item_transaction = isset($_GET['tx']) ? $_GET['tx'] : null ;
                $item_price = isset($_GET['amt']) ? $_GET['amt'] : null ;
             $item_currency = isset($_GET['cc']) ? $_GET['cc'] : null ;;

           $result = mysql_query("INSERT INTO sales(pid, uid, saledate,transactionid,amt) VALUES('$item_no', '$uid', NOW(),'$item_transaction','$item_price')");
           if($result){
           echo "<h1>Welcome, $username</h1>";
                echo '<h1>Payment Successful</h1>';

             }else{
                  echo "Payment Error";
                   }


                 ?>

最佳答案

列的数据类型必须为十进制,并且必须具有精度和小数位数精度表示存储的值的有效位数,scale表示小数点后可以存储的位数。

示例

paypalAmount DECIMAL(10,2)

默认情况下,精度值为 10,小数位数为 0。如果小数位数的值为 0,则它将没有小数值,并导致对您插入的值进行四舍五入。

SQLFiddle Demo

关于mysql - 如何在MySQL数据库中存储Paypal小数金额,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12453910/

相关文章:

php - 如果执行 mysql 更新语句则返回 true,如果没有更新行则返回 false

paypal - 新的 PayPal 沙盒 - 疯狂的事情

php - 在选择选项中显示来自 mysql 的一个表?

mysql - 如何使我的数据库连接正常工作?

php - MySQL 行在 php 页面中未排序

sql - Oracle 中的分层查询 - 失控?

sql - 读取 SQL Server 2008 中的日志文件 (*.LDF)

paypal - 如何限制 Paypal 在快速结账时显示的字段集?

Paypal Express随机错误10413

php - Codeigniter 数据库类与准备好的语句