View Single Post
  #5   Report Post  
Posted to microsoft.public.excel.programming
Dave Patrick Dave Patrick is offline
external usenet poster
 
Posts: 249
Default Storing Doubles in SQL

Should have been;

INSERT INTO Employees
(EmployeeID, FirstName, LastName)
VALUES (" & d & ", N'John', N'Smith')

Also it's pointless to format the value before storing it.


--

Regards,

Dave Patrick ....Please no email replies - reply in newsgroup.
Microsoft Certified Professional
Microsoft MVP [Windows]
http://www.microsoft.com/protect

"naive14" wrote:
Thanks. So I'll use a Double definition in my sql database.

As to the second part of the question, should I convert the double to a
string and format as in :

dim s, sqlCMD as string
dim d as double

d = 5459.459
s = Format(d, "##,##0.00")

sqlCMD = "INSERT INTO tablex VALUES ('" & s & "')
' the above probably rounds off to 2 decimals


or is this valid ...

sqlCMD = "INSERT INTO tablex VALUES ('" & d & "')


"Dave Patrick" wrote:

No, always use a data type that is equal. You can always use a type that
is
greater as well but you're possibly wasting storage space.

--

Regards,

Dave Patrick ....Please no email replies - reply in newsgroup.
Microsoft Certified Professional
Microsoft MVP [Windows]
http://www.microsoft.com/protect

"naive14" wrote:
I can successfully read and write from/to sql using excel macros.

I have numbers in my worksheet (currency and large numbers and
fractions)
that I so far handle using "double" in my macros.

a) My basic question is what is the best way to store these values in
my
sql
database. Should I define a "Double" or "Float" field in my database
or
should I define a "string" in my sql database.

b) since the sql text sent to the server is all text is it best or
neccessary to convert and format the Double to a String before using in
a
sql
command ?