---
title: ".Net och mySql-funktioner returerar olika."
type: "forum-thread"
url: "https://www.webforum.nu/amne/dotnet/169517-net-och-mysql-funktioner-returerar-olika"
topic: ".NET"
topic_url: "https://www.webforum.nu/amne/dotnet"
author: "Travoni"
published: "2008-02-29T19:26:20.000Z"
updated: "2008-03-01T08:27:02.000Z"
replies: 1
views: 438
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/dotnet/169517-net-och-mysql-funktioner-returerar-olika"
---

# .Net och mySql-funktioner returerar olika.

## #1 — Travoni, 2008-02-29T19:26Z

Här har jag två funktioner som jag gjort som skall funka på samma sätt, men det är bara det att de returnerar olika resultat...ibland.

ex. **Response.Write(getDiff(5,0.4))** returnerar **82**

```
Private Function getDiff(ByVal objCount As Int64, ByVal diffSum As Decimal) As Integer
        Return (100 * ((objCount * 4.5 - Math.Abs(diffSum)) / (objCount * 4.5)))
End Function
```

och
**select getDiff(5,0.4)** returnerar **98**

```
CREATE DEFINER=`userX`@`%` FUNCTION `getDiff`(objCount int,diffSum decimal(6,5)) RETURNS int(3)
BEGIN
RETURN (100 * (((objCount * 4.5) - abs(diffSum)) / (objCount * 4.5)));
END;
```

Bord det inte göra samma sak?

Permalänk: https://www.webforum.nu/p/169517

## #2 — Gladh, 2008-03-01T08:27Z

> **travoni skrev:**
>
> Här har jag två funktioner som jag gjort som skall funka på samma sätt, men det är bara det att de returnerar olika resultat...ibland.

Jag skulle misstänka att MySql och .NET inte hanterar dina integers på samma sätt. Så jag misstänker att ditt problem ligger i din **(objCount \* 4.5)**. Jag skulle testa med att typomvandla din objCount till en double innan du använder den i din uträkning.

\- M

Permalänk: https://www.webforum.nu/p/2085707

---

Tråden på webben: https://www.webforum.nu/amne/dotnet/169517-net-och-mysql-funktioner-returerar-olika
