Kom ihåg mig?
Home Menu

Menu


Väääldigt stora tal/nummer/nånting

Ämnesverktyg Visningsalternativ
Oläst 2013-01-04, 01:27 #1
secag secag är inte uppkopplad
Medlem
 
Reg.datum: Nov 2012
Inlägg: 211
secag secag är inte uppkopplad
Medlem
 
Reg.datum: Nov 2012
Inlägg: 211
Standard Väääldigt stora tal/nummer/nånting

Hej,

Jag sitter och spelar ett webbläsarspel där min "cash" alltså stålar är över

100.000.000.000.000.000.000.000.000.000

alltså 29 nollor.

Detta kan ju inte en BIGINT eller INT klara av. Jag vet att databasen dom använder är MySQL och dom använder PHP.

Hur kan dom lagra det? Har för mig att inte ens PHP klarar av att hantera såna stora tal?
secag är inte uppkopplad   Svara med citatSvara med citat
Oläst 2013-01-04, 11:04 #2
tartareandesire tartareandesire är inte uppkopplad
Supermoderator
 
Reg.datum: Jan 2004
Inlägg: 11 585
tartareandesire tartareandesire är inte uppkopplad
Supermoderator
 
Reg.datum: Jan 2004
Inlägg: 11 585
Du kan välja lite olika varianter beroende på krav och behov - lagra det som en sträng, binärt, exponentiellt eller dela upp på flera kolumner.
__________________
Full-stack developer, free for smaller assignments

Senast redigerad av tartareandesire den 2013-01-04 klockan 16:45 Anledning: stavfel
tartareandesire är inte uppkopplad   Svara med citatSvara med citat
Oläst 2013-01-04, 11:20 #3
Danski Danski är inte uppkopplad
Har WN som tidsfördriv
 
Reg.datum: Jul 2005
Inlägg: 1 208
Danski Danski är inte uppkopplad
Har WN som tidsfördriv
 
Reg.datum: Jul 2005
Inlägg: 1 208
Använd BINARY alternativt dela upp i flera kolumner.
Danski är inte uppkopplad   Svara med citatSvara med citat
Oläst 2013-01-10, 22:18 #4
secag secag är inte uppkopplad
Medlem
 
Reg.datum: Nov 2012
Inlägg: 211
secag secag är inte uppkopplad
Medlem
 
Reg.datum: Nov 2012
Inlägg: 211
Jag har försökt googla mig fram till någon men jag hittar ingenting. Vill ni länka något exempel eller bra förklaring?
secag är inte uppkopplad   Svara med citatSvara med citat
Oläst 2013-01-11, 03:03 #5
Conny Westh Conny Westh är inte uppkopplad
Klarade millennium-buggen
 
Reg.datum: Aug 2005
Inlägg: 5 166
Conny Westh Conny Westh är inte uppkopplad
Klarade millennium-buggen
 
Reg.datum: Aug 2005
Inlägg: 5 166
Hittade denna kod i C# på CodeProjekt för BigInteger med extremt många siffrors noggrannhet, exempel på 512 bitar:

http://www.codeproject.com/Articles/...gInteger-Class

Exempelkoden är på över 129K bytes (max 10K i inlägg på WN) annars hade jag kunnat laddat upp den här.

Senast redigerad av Conny Westh den 2013-01-11 klockan 03:15
Conny Westh är inte uppkopplad   Svara med citatSvara med citat
Oläst 2013-01-11, 09:23 #6
secag secag är inte uppkopplad
Medlem
 
Reg.datum: Nov 2012
Inlägg: 211
secag secag är inte uppkopplad
Medlem
 
Reg.datum: Nov 2012
Inlägg: 211
kommer inte åt filen.

Men kan man inte lagra nummer som varchar som någon nämnt och sedan använda bc_match i PHP för att räkna osv..?
secag är inte uppkopplad   Svara med citatSvara med citat
Oläst 2013-01-11, 11:06 #7
tartareandesire tartareandesire är inte uppkopplad
Supermoderator
 
Reg.datum: Jan 2004
Inlägg: 11 585
tartareandesire tartareandesire är inte uppkopplad
Supermoderator
 
Reg.datum: Jan 2004
Inlägg: 11 585
Citat:
Ursprungligen postat av secag Visa inlägg
kommer inte åt filen.

Men kan man inte lagra nummer som varchar som någon nämnt och sedan använda bc_match i PHP för att räkna osv..?
Om du bara ska lagra talen funkar det bra men det blir inte särskilt smidigt om du måste sortera, göra beräkningar osv. Då bör du välja binär lagring, alternativt använda dig av flera kolumner.
__________________
Full-stack developer, free for smaller assignments
tartareandesire är inte uppkopplad   Svara med citatSvara med citat
Oläst 2013-01-11, 14:58 #8
secag secag är inte uppkopplad
Medlem
 
Reg.datum: Nov 2012
Inlägg: 211
secag secag är inte uppkopplad
Medlem
 
Reg.datum: Nov 2012
Inlägg: 211
Citat:
Ursprungligen postat av tartareandesire Visa inlägg
Om du bara ska lagra talen funkar det bra men det blir inte särskilt smidigt om du måste sortera, göra beräkningar osv. Då bör du välja binär lagring, alternativt använda dig av flera kolumner.
Var också inne på binär eftersom som en kompis rekommenderade. Gör ett text RPG till kund och han vill då att en karaktärs pengar skall kunna bli hur mycket som helst(i alla fall över BIGINT som är det ja tänkte använda). Ska testa BINARY och återkommer med något resultat.

Är det föresten bättre att göra uträkningarna i PHP eller direkt i queryn?
secag är inte uppkopplad   Svara med citatSvara med citat
Oläst 2013-01-11, 15:48 #9
Conny Westh Conny Westh är inte uppkopplad
Klarade millennium-buggen
 
Reg.datum: Aug 2005
Inlägg: 5 166
Conny Westh Conny Westh är inte uppkopplad
Klarade millennium-buggen
 
Reg.datum: Aug 2005
Inlägg: 5 166
Citat:
Ursprungligen postat av secag Visa inlägg
kommer inte åt filen.

Men kan man inte lagra nummer som varchar som någon nämnt och sedan använda bc_match i PHP för att räkna osv..?
Slängde upp originalfilerna i Dropboxen.... Håll till godo...


https://dl.dropbox.com/u/33944460/We...teger_demo.zip

https://dl.dropbox.com/u/33944460/We...nteger_src.zip


Dessa klasser är till förgöra beräkningar och använda BigInteger som datatyp i programkoden, men lagringen får man ta till lämpliga knep beroende på viken databas eller annat lagringsformat man använder.
Conny Westh är inte uppkopplad   Svara med citatSvara med citat
Svara


Aktiva användare som för närvarande tittar på det här ämnet: 1 (0 medlemmar och 1 gäster)
 

Regler för att posta
Du får inte posta nya ämnen
Du får inte posta svar
Du får inte posta bifogade filer
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG]-kod är
HTML-kod är av

Forumhopp


Alla tider är GMT +2. Klockan är nu 16:14.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson
 
Copyright © 2017