I'm uploading data from a CSV file into SQL Server 2000 using an upload routine in C# (ASP.NET 2.0). I'm using an OleDbDataAdapter to select all the data in the CSV file into a DataTable. I then use a SQLBulkCopy to copy all the data into my SQL Server table. The CSV file maps exactly to the fields in the SQL Server database and I've used a custom delimiter of a '~' (tilda) that is declared in a schema.ini file. The import works fine and my SQL Server table is fully populated with all the data. However, one source field in the CSV file is getting truncated in my SQL Server table. It is a field containing a value e.g. 32,000, 64,500 but this is getting truncated and losing the trailing zeros in SQL Server i.e. 32,000 (CSV) becomes 32 (SQL Server) and 64,500 becomes 65,5. I've tried mapping the source field to a varchar, nvarchar and text field, but all data types have the same problem with truncating the trailing zeros (I only need to display the data - no calculations required) and the ',' in the number in the CSV file has prevented me from mapping this to an integer. Also, locally the code works fine and my local database is SQL Server 2005, but the remote host is using SQL Server 2000 and this is where the problem occurs. Any help would be appreciated! Thanks
I am exporting from a SQL money field to a flat file. The datatype is set to DT_CY in SSIS. I need two decimal places in the flat file but instead I am getting 1.1 instead of 1.10.
Should I be using a different datatype or is there a way to set the number of decimals on the DT_CY datatype?
I have a databound textbox that is used to store a decimal value.
If my sql table stores this column as a decimal(2,2), then all of the numbers entered into the field will automatically put decimal places in that I don't want. For example, 45 becomes 45.00... 34.5 becomes 34.50.
If I set the sql table to nchar(10) and the dataset to system.string (max length of -1), then the number looks the way I would like it, however after a datatable update I end up with trailing whitespace after the number - filling up the rest of the unused 10 characters. For example, "45" becomes "45 " (8 spaces afterwards).
Does anybody know how I can fix this? I would prefer to store the numbers in SQL as a string (nchar(10))... but I don't know how to get rid of that darned whitespace. I would like to remove it at the database level and not at the client level if at all possible.
I am trying to use bcp to load a text file into SQL Server 7. The decimal numbers in the text file are formatted as 123455 and when I load the values to SQL I want the last two digits to be the decimal 1234.55. My current process is loading the value as 123455.00. What do I need to do in the format file to get this to work???
Hi all, This is what I have: DECLARE @OnTime int DECLARE @UnControlled int DECLARE @Volume int DECLARE @GrossEffect decimal(10,2) DECLARE @NetEffect decimal(10,2) DECLARE @WeekEndDate datetime
SET @OnTime = (SELECT COUNT(DataID) FROM tblEDITempARS WHERE OnTimeFlag = 1 AND ARSScanType = 'D' AND ARSType='AN') SET @UnControlled = (SELECT COUNT(DataID) FROM tblEDITempARS WHERE ControlFlag = 'U' AND ARSScanType = 'D' AND ARSType='AN') SET @Volume = (SELECT COUNT(DataID) FROM tblEDITempARS WHERE ARSScanType = 'D' AND ARSType='AN') SET @GrossEffect = (@OnTime/@Volume * 100) SET @NetEffect = ((@OnTime + @UnControlled)/@Volume * 100) SET @WeekEndDate = (SELECT DISTINCT WeekEndDate FROM tblEDITempARS)
Hello, I have a table with a field with the format of 8 decimals. When I make a select to that table instead is given me (for example) 25,00 it gaves me 25,00000000. How can I fix the with the correct format? Thanks in advance.
I need to display decimal results from SQL Server queries, but the decimals keep getting truncated. For example, 9 divided by 4, keeps getting truncated to 2. Does anyone know how to display the whole result, including the decimals?
I have a field in my SQL table that is defined Decimal(10,8), which provides me with the ability to have up to 8 digits after the decimal place, however, if I store a value such as 3.14, it is stored as 3.14000000. This is fine in the database, but it is the same when it's returned. I have tried using Convert.ToDecimal on my returned row but it doesn't work. The value at runtime appears as 3.14D in the locals window but displays with all the insignifcant digits.
Any ideas what's happening or if there is an easy way to trim the trailing zeros?
I have two fields whose format in the table is decimal (14,5). I now have to divide one field by the other, and I want the result to be in the format decimal (21,16). Whatever I do I'm not able to get this result with sixteen decimals. I tried with dec(Field1,21,16)/Field2 but it yields six decimals. I tried with dec(Field1,21,16)/Field2 but it yields an integer. I tried other ways but I always get a result which is made of maximum six decimals. What can I do? Thank you. Anna - Verona (Italy)
I am relatively new to SQL server. I am tring to send some decimalvalues to the database using a stored procedure with parameters of typeDECIMAL. Every time it inserts the values into the database thedecimals are truncated. I saw on the MSDN library that you have to setthe precision and scale values b/f you run the stored procedure. So Iset the precision to 8 and the scale to 4 and it still didn't help. Cananyone help me?
I'm using the sum() agregate function inside a select with a decimal field with an scale of 2. I want to get the result always with 2 decimals, but if the result is 100.10 I get 100.1 . I've tried to convert and cast the result but I can't find how to get 2 decimals. Please help. Thanks
I have encountered a problem doing an update on a Field defined as DECIMAL with dbcursor().
I have opened a cursor with dbcursoropen() with option LOCK_CC set. Then I have bound some char variables to CHAR Fields with STRINGBIND and some double Variables to the DECIMAL fields with FLT8BIND.
When I read the cursor, the data is correct in the bound variables. But when I do an update, all data for the numeric fields are gone and the database contains only NULL Values. The Strings are updated correctly.
I have tried to set the length, I am using the poutlen-variables with a value other than 0, but nothing helps.
I want to save a decimal in my sql table. It's an hourly rate. I have my field as smallmoney type. I am updating the table using a sp from my web page. It always rounds my entry up eg 3.75 becomes 4.00. Heres my sp and the line where I am passing the parameter to the sp.
Can someone suggest a FAST way to select Currency values where the number has more than X decimal places? There are zillions of rows so looping in code is not the preferred solution.
select cast( 0.0050000000 as decimal(38,23)) * cast(0.0000010000 as decimal(38,23)) select cast( 0.0050000000 as decimal(28,23)) * cast(0.0000010000 as decimal(28,23)) select cast( 0.01 as decimal(28,15)) * cast(0.0000000001 as decimal(28,15)) select cast( 0.01 as decimal(28,16)) * cast(0.0000000001 as decimal(28,16))
The result was following:
0.0000000--was zero 0.000000005000000000000000000 0.00000000000--was zero 0.0000000000010
Hi, Im having a decimal value of 1.24 im rounding off the value to 1 precision ex:- select round(1.24,1) the output its returning is 1.20 i want to get only 1.2 can anyone suggest on this??
I have a column defined as DECIMAL(10,6). I want to display it as astring but I do not want the trailing zeros. I cannot seem to get CASTor CONVERT or STR to exclude the zeros.Examples:45.340000 --> 45.3427.700000 --> 27.755.000000 --> 55Is there a function that will do this or do I need to write my own?
I am trying use the decimal data type for a field in SQL Server. When I input the values below, they round off. 73.827 Rounds to 74 1925.1 Rounds to 1925 119.79 Rounds to 120 What am I missing? Access never gave me this issue. Do you see any reason this would happen? I am entering the values into the table directly!
I have a table I am trying to create and one of the columns needs to have a decimal that appears as 00.00 and does not round because the data example is 87.09, 86.50, 98.55 etc. I have tried every type of decimal formatting when creating I can find and nothing has worked. When I create the table and upload the data it keeps rounding like this: 87.00, 87.00, 99.00
The only way it does not round is if I do it as a char but that does not seem right when dealing with numerics.
what re the sql functions to manipulate numbers, decimals, dates.. 1/ like if I have 123443.78654 I want to display just 2 decimals : 123443.78 or 3 decimals .. 2/ also if I want to have bankers rounding 3/ how about dates conversion : from string to date type and vice versa and adding dates, substracting dates, getting the day, the month.... what re the SQL functions to do that pls
I have a table which I want to update by dividing one field intoanother. The update runs with no errors, but the results come out asonly a positive integer number.The datatype for the result field is float.The datatype for the other fields are int.I have tried testing by dividing 7 by 10000, which should give me0.0007. The result in the database is 0.How do I define a field to show the full value with decimal positions?If I enter .0007 into the field through the Enterprise Manager, it shows0007. When I update by dividing, it shows 0.Any help would be welcome.Joel*** Sent via Developersdex http://www.developersdex.com ***Don't just participate in USENET...get rewarded for it!
Goodday All I wonder if anyone can help? I want to set an integer (int) as a data type , but I want it also to accept decimals. What must I set the data type as , when making my table? Thanks Rob