Can Columns Or Text Be Longer Than 255 Characters
Jan 26, 1999Is there a way to have a memo field in a table that is larger than 255 characters? I like to have a memo field of of about 1000 characters of text.
Thanks,
Jim
Is there a way to have a memo field in a table that is larger than 255 characters? I like to have a memo field of of about 1000 characters of text.
Thanks,
Jim
(Applies to SQLServer 2005 SP1)
We have found that using the SSIS "Import and Export Wizard" using the "Microsoft Excel" data source that there appears to be a maximum column length of 255 characters for any row.
Even when defining the destination table columns as nvarchar(4000), the wizard fails with the errors shown below.
We have found no workaround except manually changing the imput data. There doesn't appear to be any "Advanced" options for the Excel importer as there are for the flat-text importer. So, no question here, just posting the bug so that *next* time someone searches the web for an answer, this post comes up
MessagesError 0xc020901c: Data Flow Task: There was an error with output column "English String" (18) on output "Excel Source Output" (9). The column status returned was: "Text was truncated or one or more characters had no match in the target code page.". (SQL Server Import and Export Wizard) Error 0xc020902a: Data Flow Task: The "output column "English String" (18)" failed because truncation occurred, and the truncation row disposition on "output column "English String" (18)" specifies failure on truncation. A truncation error occurred on the specified object of the specified component. (SQL Server Import and Export Wizard) Error 0xc0047038: Data Flow Task: The PrimeOutput method on component "Source - Sheet1$" (1) returned error code 0xC020902A. The component returned a failure code when the pipeline engine called PrimeOutput(). The meaning of the failure code is defined by the component, but the error is fatal and the pipeline stopped executing. (SQL Server Import and Export Wizard) Error 0xc0047021: Data Flow Task: Thread "SourceThread0" has exited with error code 0xC0047038. (SQL Server Import and Export Wizard) Error 0xc0047039: Data Flow Task: Thread "WorkThread0" received a shutdown signal and is terminating. The user requested a shutdown, or an error in another thread is causing the pipeline to shutdown. (SQL Server Import and Export Wizard) Error 0xc0047021: Data Flow Task: Thread "WorkThread0" has exited with error code 0xC0047039. (SQL Server Import and Export Wizard)
edit: After searching further this is documented under "Excel Source"
in BOL which provides a registry-based workaround. I guess the issue
is that the wizard considers truncation to be a 'fail' case and
there's no easy way to override this behaviour, specify the column
types nor determine which line is in error)
Truncated text. When the driver determines that an Excel column contains
text data, the driver selects the data type (string or memo) based on the
longest value that it samples. If the driver does not discover any values longer
than 255 characters in the rows that it samples, it treats the column as a
255-character string column instead of a memo column. Therefore, values longer
than 255 characters may be truncated. To import data from a memo column without
truncation, you must make sure that the memo column in at least one of the
sampled rows contains a value longer than 255 characters, or you must increase
the number of rows sampled by the driver to include such a row. You can increase
the number of rows sampled by increasing the value of TypeGuessRows under
the HKEY_LOCAL_MACHINESOFTWAREMicrosoftJet4.0EnginesExcel registry
key.
)
I'm putting a process together to run a DBCC CHECKCONSTRAINTS process against copies of client databases.The author application doesn't set the constraints as trusted, and therefore we need to check the integrity of the data.
The problem is that some of the Check constraints have a definition that is longer than 4,000 characters.When this is the case, DBCC CHECK CONSTRAINTS fails.One option is that I write a cursor to select the constraints that have a definition less than 4,000 characters and then call the DBCC command for those particular constraints. However, I'd prefer a more elegant approach - ideally a way to run DBCC CHECKCONSTRAINTS against all constraints regardless of the length of the definition
Hello,
View 1 Replies View RelatedHi,
Im a programmer for an university webportal which uses php and msssql.
When an user creates a new entry and his text is too long the entry is cut short and weird characters appear at the end of the entry.
For example:
http://www.ttz.uni-magdeburg.de/scripts/test-messedb/php/index.php?option=show_presse&funktion=presse_show_mitteilung&id=333
How can I set the text limit to unlimited?
Could it be something else?
Is there a way of splitting an entry to several text fields automatically?
Thanks in advance for any help you can give me,
Chris
Hi we have a table with about 400000 records in it. It starting to take longer and longer to add a new record. I was thinking of creating another identical table and archiving off most of the records every month (we are now adding about about 4000 records a day) . Is this the best thing to do?
I don't know a lot about sql server so any help or suggestions would be great
The following code is taking longer and longer to run. I am not talking about the gradualy increase in size. this job has been taking 30-40 mins normaly and in the last few days it has gone 1hr to 2 hr to 3 hr... ANy ideas why this is happening? I can not see and other jobs running at this time.
declare @filename varchar(255)
set @filename =
(select top 1 physical_device_name
from ****.msdb.dbo.backupset bs, ****.msdb.dbo.backupmediafamily bf
where bs.media_set_id=bf.media_set_id
and database_name = 'Live_PRD'
and backup_start_date>getdate()-1
and type = 'D'
order by backup_start_date desc)
restore database REPORTS_REP
from disk=@filename
with
move 'LIVE_PRD_Data' to 'T:SOUTHREPORTS_REP_Data.mdf',
move 'LIVE_PRD_Log' to 'U:SOUTHREPORTS_REP_Log.ldf',
move 'LIVE_PRD_Log2' to 'U:SOUTHREPORTS_REP_Log2.ldf',
replace, stats=2, recovery
I have a column that is populated similar to below
[URL] ....
I need to extract just the 12345 portion. This will always appear after the first "=" and always be proceeded by &UL. I know how I can do this separately, which would be like
To get 12345&UL
ltrim(rtrim(
substring(
replace(cast(MyCol as nvarchar(max)),
'=',
replicate(cast(' ' as nvarchar(max)),10000)),
10001, 10000)))
And then I could run an update on the table after doing the above step using something like
SUBSTRING(MyCol,0, CHARINDEX('&',MyCol))
What I'd like to do is to have everything performed in one step, the above 2 SQL statements combined as one statement, so a separate update does not need to be ran.
Div writes "I have 8 columns consisting of 1 letter each.I want to be able to count the number of times that the letter 'a' or 'b' until 'z' occurs in one record. For example, for record number 1, the following information is available:
Column 1: a
Column 1: k
Column 1: t
Column 1: s
Column 1: a
Column 1: d
Column 1: d
Column 1: k
I want to be able to see that for this record there are 2 occurences of 'a',2 occurences of 'k', 1 occurence of 't', etc.
Please help!!
I'm using SQL Version 8.0 and Windows XP Professional.
Thank you!
Divya"
hi all
does anybody know why the fields of my db with the type "text" can store max. 64 characters? i thought fields of the type "text" could save unlimited characters. is it any wrong setting?i'm using visual web developer with sql server express
I have a table of data with lines of various lengths. An example is
A Smith - Give #12345# Sydney City
B Jones and S Jones - Give #876543# Washington
I am trying to work out how to create a new column with just the number between the # symbols. The number would be between 5 and 9 numbers.
I have a large table, tblMessage, which stores e-mail messages in textfields. I need to remove the carriage returns the data in these fields,but I have not yet figured out how to do so.I thought that the way to do this would be with the REPLACE function;unfortunately, of course, the REPLACE function cannot work with TEXTfields. I tried CASTing the text field to VARCHAR(8000); however, someof the rows have more than 8000 characters in the text field, so it bombs.Here is the SQL that I tried:selectmsgID,msgSent,msgFromType,msgFromID,msgSubject,REPLACE (CAST(msgMessage AS varchar(8000)), CHAR(13), '<BR>') ASnewMessage,msgOriginal,attIDinto tblMessageNewfrom tblMessageI'm at my wit's end. Truncating the text field to 8000 character is anacceptable option, but I can't even seem to be able to do that.I'm using SQL Server version 7.
View 2 Replies View RelatedHai all,
We have quite a strange problem, we have some SP's in our project which is functioning quite well all these days. Suddenly one day we got an error in the SP stating "Invalid Table Name", when we opened the SP and saw in some places the Tablename was replaced with Junk Characters inside the SP !!!!!!!
For Ex: Inside the SP we have the following SELECT query
"SELECT F1 FROM SampleTable"
the above query is getting replaced with
"SELECT F1 FROM SampleTa?le"
The junk character actually appears like a box!!!.. we were absolutely clueless why this was happening. Then if we change the SP once agin and run it starts to execute but only for a short time and the problem comes back once again. When we went through the SQL logs we got this error repeatedly:
"Error: 17805, Severity: 20, State: 3
Invalid buffer received from clients"
We came to know a little about this problem from kb articles in MS that when you are calling an SP from .Net u should specify the parameter data types explicitly and u should not use SQL Client in Finalise method all which we have not done in the application.
Tha SP was using #Table which we replaced to @Tablevariables but still we got the problem once, we are monitoring with the same Table Variables.
We are using SQL Server 2000 SP4. We have got stuck with this problem for days now . Any help is greatly appreciated.
Thanks in advance.
This is obviously a radical idea but some actually DO want to store linefeeds in varchar columns.
In MySQL I can escape difficult characters for example
INSERT INTO sometable(address) VALUES("23 SomeRoad
SomeTown
SomeCounty");
Does anyone know how to do this in Transact SQL?
Hi Everybody,
I have a table with one column of text data type. This table contains around 1200 records(each row is 60 characters only). My task is, I have to append all these records into a single record(Concatenation of records from other table) to another table.
For that I have created table(destination table) with one column of text datatype. Using the 'UPDATETEXT' function I am able to append 133 records(each row of 60 characters) from the other table into a single row of my destination table. After that I am not able to append my records further. It is giving the following error.
"
Server: Msg 7135, Level 16, State 4, Procedure gene1_proc, Line 26
Deletion length 60 is not in the range of available text, ntext, or image data. The statement has been terminated.
"
Why I have created 'text' instead of char or varchar datatype is, it can accept more than 8000 characters. But here in my case it is not accepting more than 8000 characters. The problem is coming from 134 (133*60 = 7980 characters) records onwards.
Can anybody guide me how to proceed with this?.
tks in advance,
Sam
I'm adding data to a text column, and whenever I have a backslash at the end of a line it disappears. Here's an example:
Code:
INSERT INTO MyTable (TextCol) VALUES ('some text
some more text
yet more text')
The on the first line is fine- the on the 2nd line just disappears. If I add a 2nd backslash on the end of the line, one is inserted. If I add a space to the end of the line, everything works as normal. I can fix this client-side, but before I do I'd really like to know what's going on?
Hello,
I have a select statement that looks like this:
SELECT TOP 10 [Id], [Abstract] FROM NewsArticles
Abstract is a TEXT Column. I'd like to limit it to 50 characters... how would I do that.
Thanks,
-- shawn
We just implemented a full-text index on our product master table,however the users are now screaming because they cannot search on someof the special characters that are commonly found in our productdescriptions, specifically the #, %, and period (.)These characters are not in the Noise file, so no luck in justdeleting them from there, but somehow, the full-text is automaticallyignoring those characters, and we would like for the full-text to notignore these characters.Any insight or help would be appreciated.Thanks
View 1 Replies View RelatedUsing MS Access as a front end and SQL as a back end how can i get past the 4000 character limmit per table?
View 9 Replies View RelatedI think this may have been asked for million times... but for some strange reason, i couldn't find anything related about that in this forum......
So, just wondering if there is any way to handle special characters like "&" in full text search ?
like "AT&T" ?
cause when I do a simple select * contains AT&T, it won't return any result ...
thank you in advance.
Hi, I'd like to know if there's a way to get sql server NOT to ignore the colon when performing a full text search (CONTAINS) for a string "sometext:". At this moment the query works, only the results are not narrowed to the ones containing the specified colon. I've read about this and I saw that these kind of characters (word breakers and stemmers) are ignored and want to know if there's a way to work around this (obviously performing well - so LIKE fails the test). Thanks
View 2 Replies View RelatedIf I create a row with a nullable text column whose initial value is null and then update the column with a value that is exactly 256 characters long, the value remains null. Once I update the column to any other value (including null), it works as expected. I have not yet seen a way around this.
I am working in 6.5 SP3.
Hi, i have a query that goes like this
select *
from Users
where UserName Like =@Username;
the values for 'UserName' go like this
Adrián
Jesús
Fernández
Güero
all of them have spanish accents. is there a way to make the "like" value to ignore the spanish characters? (á, é, í, ó, ú, ü, etc)
That is because the user will not always write "Jesús" they will write "Jesus" or they will not write "Adrián" they will write "Adrian"
so is there any way to tell the SQL Server engine to ignore those characters?
thanks!!!
Hi all,I am quite experimented with SQL Server, but not that much with fulltext indexing. After some successful attempts with english fields, I'vedecided to try it with Japanese characters. I don't know why, but itseems to have a strange behaviour.As in this screenshot(http://img65.imageshack.us/img65/980/jap3xt.gif), the CONTAINSfunction does not seem to return only fields with an exact word matchof the given "word" (query), but also strange results which does noteven correspond to the query. Can anybody help me with that one?Thanks! :)ibiza
View 5 Replies View Related
Recently to help improve search times across one of our catalogs we implemented a full text index. So far this has worked wonders and improved our speeds 20 fold!
However recently we hit a snag with certian searches. Our catalog contains parts with descriptions such as 3'x2'. We have taken out single characters and numbers from our noise files, but they don't seem to contain special characters (ie . , " ' / ). So it seems that each one of these characters acts as a work breaker. Is there a way we can structure our search to include these characters, or is there another file to modify to allow these characters?
Currenty our call, simplified, looks like this:
select * from catalog where freetext(description,'3''x2''')
Thanks for the help!
I have an issue where I am storing various international characters in nvarchar columns, but need to branch the data at one point of processing so that ASCII characters are run through an additional cleansing process and all non-ASCII characters are set aside.
Is there a way to identify which nvarchar values are within the ASCII range and can be converted to varchar without corruption? Also, the strings may contain a mix of english and international character sets, so the entire string must be checked and not just the first character.
i.e.
Pass:
'Hello', 'abc123'
Fail:
'太平市', 'abc太123'
I have the following problem. My SQL Query that i wrote works but the result that is displayed in Query analyzer cuts most of my long text that I want in my result. The long text string is approx about 400 characters and the type is varchar of the field. Any ideas??
SELECT '510', PRODCLASSID
, '1', COMPONENTID,'ENG'+SPACE(2),'#'+SPACE(254),'#'+SPAC E(254),'#'+SPACE(254),'#'+SPACE(99),externalid,
'Desc1' = CASE
WHEN SUBSTRING(externalid,1,2) = 'MF'
THEN 'Full machine warranty : parts, labour, mileage and others covered at warranty rates applicable at the time of repair. '
WHEN SUBSTRING(externalid,1,2) = 'MP'
THEN 'Full machine warranty, parts only : parts covered at warranty rates applicable at the time of repair. '
WHEN SUBSTRING(externalid,1,2) = 'PF'
THEN 'Power line warranty : parts, labour, mileage and others covered at warranty rates applicable at the time of repair. '
WHEN SUBSTRING(externalid,1,2) = 'PP'
THEN 'Power line warranty, parts only : parts are covered at warranty rates applicable at the time of repair. '
END
+
CASE
WHEN SUBSTRING(externalid,LEN(externalid)- 3,4) = '2018'
THEN 'Flexible warranty starts after the standard warranty period has expired and is covered up to 18 month or 2000 HRS, whichever comes first. '
WHEN SUBSTRING(externalid,LEN(externalid)-3,4) = '3024'
THEN 'Flexible warranty starts after the standard warranty period has expired and is covered up to 24 month or 3000 HRS, whichever comes first. '
WHEN SUBSTRING(externalid,LEN(externalid)-3,4) = '4030'
THEN 'Flexible warranty starts after the standard warranty period has expired and is covered up to 30 month or 4000 HRS, whichever comes first. '
WHEN SUBSTRING(externalid,LEN(externalid)-3,4) = '5036'
THEN 'Flexible warranty starts after the standard warranty period has expired and is covered up to 36 month or 5000 HRS, whichever comes first. '
WHEN SUBSTRING(externalid,LEN(externalid)-3,4) = '6042'
THEN 'Flexible warranty starts after the standard warranty period has expired and is covered up to 42 month or 6000 HRS, whichever comes first. '
WHEN SUBSTRING(externalid,LEN(externalid)-3,4) = '8054'
THEN 'Flexible warranty starts after the standard warranty period has expired and is covered up to 54 month or 8000 HRS, whichever comes first. '
WHEN SUBSTRING(externalid,LEN(externalid)-3,4) = '1074'
THEN 'Flexible warranty starts after the standard warranty period has expired and is covered up to 74 month or 10000 HRS, whichever comes first. '
END
+ 'Flexible warranty is handled according to the procedures described in ESPPM 3-10.'
+
CASE
WHEN prodclassid IN ('P1','P11','P8','P9')
THEN ' (mileage limited to 300 km)'
WHEN prodclassid IN ('P7')
THEN ' (mileage limited to 200 km)'
ELSE NULL
END
+
SPACE(5000 - LEN('Desc1'))
.......
Hi,
I am tryin to run an SSIS package from an Excel Spreadsheet to MS SQL Server 2005.
I receive the error: Text was truncated or one or more characters had no match in the target code page (full report is below).
I found this thread: http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=2562259&SiteID=1
and have set the destination column to nvarchar(max), and I have also set the TruncationRowDisposition = RD_IgnoreFailure on the destination column, with no luck.
Any ideas? Thanks!
Operation stopped...
- Initializing Data Flow Task (Success)
- Initializing Connections (Success)
- Setting SQL Command (Success)
- Setting Source Connection (Success)
- Setting Destination Connection (Success)
- Validating (Success)
- Prepare for Execute (Success)
- Pre-execute (Success)
- Executing (Success)
- Copying to [cisense_new].[dbo].[_Details] (Error)
Messages
Error 0xc020901c: Data Flow Task: There was an error with output column "Name" (66) on output "Excel Source Output" (60). The column status returned was: "Text was truncated or one or more characters had no match in the target code page.".
(SQL Server Import and Export Wizard)
Error 0xc020902a: Data Flow Task: The "output column "Name" (66)" failed because truncation occurred, and the truncation row disposition on "output column "Name" (66)" specifies failure on truncation. A truncation error occurred on the specified object of the specified component.
(SQL Server Import and Export Wizard)
Error 0xc0047038: Data Flow Task: SSIS Error Code DTS_E_PRIMEOUTPUTFAILED. The PrimeOutput method on component "Source 1 - owners$" (52) returned error code 0xC020902A. The component returned a failure code when the pipeline engine called PrimeOutput(). The meaning of the failure code is defined by the component, but the error is fatal and the pipeline stopped executing. There may be error messages posted before this with more information about the failure.
(SQL Server Import and Export Wizard)
Error 0xc0047021: Data Flow Task: SSIS Error Code DTS_E_THREADFAILED. Thread "SourceThread1" has exited with error code 0xC0047038. There may be error messages posted before this with more information on why the thread has exited.
(SQL Server Import and Export Wizard)
Error 0xc0047039: Data Flow Task: SSIS Error Code DTS_E_THREADCANCELLED. Thread "WorkThread0" received a shutdown signal and is terminating. The user requested a shutdown, or an error in another thread is causing the pipeline to shutdown. There may be error messages posted before this with more information on why the thread was cancelled.
(SQL Server Import and Export Wizard)
Error 0xc0047039: Data Flow Task: SSIS Error Code DTS_E_THREADCANCELLED. Thread "WorkThread2" received a shutdown signal and is terminating. The user requested a shutdown, or an error in another thread is causing the pipeline to shutdown. There may be error messages posted before this with more information on why the thread was cancelled.
(SQL Server Import and Export Wizard)
Error 0xc0047039: Data Flow Task: SSIS Error Code DTS_E_THREADCANCELLED. Thread "WorkThread1" received a shutdown signal and is terminating. The user requested a shutdown, or an error in another thread is causing the pipeline to shutdown. There may be error messages posted before this with more information on why the thread was cancelled.
(SQL Server Import and Export Wizard)
Error 0xc0047021: Data Flow Task: SSIS Error Code DTS_E_THREADFAILED. Thread "WorkThread2" has exited with error code 0xC0047039. There may be error messages posted before this with more information on why the thread has exited.
(SQL Server Import and Export Wizard)
Error 0xc0047021: Data Flow Task: SSIS Error Code DTS_E_THREADFAILED. Thread "WorkThread0" has exited with error code 0xC0047039. There may be error messages posted before this with more information on why the thread has exited.
(SQL Server Import and Export Wizard)
Error 0xc0047021: Data Flow Task: SSIS Error Code DTS_E_THREADFAILED. Thread "WorkThread1" has exited with error code 0xC0047039. There may be error messages posted before this with more information on why the thread has exited.
(SQL Server Import and Export Wizard)
Error 0xc02020c4: Data Flow Task: The attempt to add a row to the Data Flow task buffer failed with error code 0xC0047020.
(SQL Server Import and Export Wizard)
Error 0xc0047038: Data Flow Task: SSIS Error Code DTS_E_PRIMEOUTPUTFAILED. The PrimeOutput method on component "Source 2 - trademarks$" (128) returned error code 0xC02020C4. The component returned a failure code when the pipeline engine called PrimeOutput(). The meaning of the failure code is defined by the component, but the error is fatal and the pipeline stopped executing. There may be error messages posted before this with more information about the failure.
(SQL Server Import and Export Wizard)
Error 0xc0047021: Data Flow Task: SSIS Error Code DTS_E_THREADFAILED. Thread "SourceThread2" has exited with error code 0xC0047038. There may be error messages posted before this with more information on why the thread has exited.
(SQL Server Import and Export Wizard)
Error 0xc02020c4: Data Flow Task: The attempt to add a row to the Data Flow task buffer failed with error code 0xC0047020.
(SQL Server Import and Export Wizard)
Error 0xc0047038: Data Flow Task: SSIS Error Code DTS_E_PRIMEOUTPUTFAILED. The PrimeOutput method on component "Source - details$" (1) returned error code 0xC02020C4. The component returned a failure code when the pipeline engine called PrimeOutput(). The meaning of the failure code is defined by the component, but the error is fatal and the pipeline stopped executing. There may be error messages posted before this with more information about the failure.
(SQL Server Import and Export Wizard)
Error 0xc0047021: Data Flow Task: SSIS Error Code DTS_E_THREADFAILED. Thread "SourceThread0" has exited with error code 0xC0047038. There may be error messages posted before this with more information on why the thread has exited.
(SQL Server Import and Export Wizard)
- Copying to [cisense_new].[dbo].[_Owners] (Stopped)
- Copying to [cisense_new].[dbo].[_Trademarks] (Stopped)
- Post-execute (Success)
Messages
Information 0x402090df: Data Flow Task: The final commit for the data insertion has started.
(SQL Server Import and Export Wizard)
Information 0x402090e0: Data Flow Task: The final commit for the data insertion has ended.
(SQL Server Import and Export Wizard)
Information 0x402090df: Data Flow Task: The final commit for the data insertion has started.
(SQL Server Import and Export Wizard)
Information 0x402090e0: Data Flow Task: The final commit for the data insertion has ended.
(SQL Server Import and Export Wizard)
Information 0x402090df: Data Flow Task: The final commit for the data insertion has started.
(SQL Server Import and Export Wizard)
Information 0x402090e0: Data Flow Task: The final commit for the data insertion has ended.
(SQL Server Import and Export Wizard)
- Cleanup (Success)
Messages
Information 0x4004300b: Data Flow Task: "component "Destination - _Details" (26)" wrote 14454 rows.
(SQL Server Import and Export Wizard)
Information 0x4004300b: Data Flow Task: "component "Destination 1 - _Owners" (92)" wrote 13304 rows.
(SQL Server Import and Export Wizard)
Information 0x4004300b: Data Flow Task: "component "Destination 2 - _Trademarks" (186)" wrote 10005 rows.
(SQL Server Import and Export Wizard)
Hi,
I have tried to extract data from Pervasive SQL into MS SQL Server using DTS. Due to the server has been set as Chinese language region, the MS SQL is also set as 'Chines_PRC_CI_AS' by default. After the successful extraction and transfer, I have exported the data out to Excel format. Due to different location, I have copy and transfer the data into another reporting server which is having MS SQL 2005.
When trying to import the data into the server, it prompted an error '[Data Conversion 1 [168]] Error: Data conversion failed while converting column "DESC" (166) to column "Copy of DESC" (187). The conversion returned status value 4 and status text "Text was truncated or one or more characters had no match in the target code page.". '. After checking and finding, I found it was due to the chinese characters that are contained inside the data files.
I have tried to change the collation setting inside MS SQL 2005 with the same setting as the MS SQL 2000, but it still not working. Please help and advice.
Thank you and cheers.
Best regards,
Francis
Why does it take longer and longer for the same code to run very simply I have 8,0000,000 records I want to delete from a table . I have tried a few options
Option 1 a while loop which deletes 10,000 rows per loop starting from the earliest until it hits the cut of number I have set. THIS TOOK 5 HOURS
Option 2 created an SP which found the oldest 100,000 records then deleted them. If I run this SP manually it takes 30 €“ 60 secs. Which I thought was much better than above. So I put this SP in a while loop to run 80 odd times thinking the time it would take would be 80 mins a huge improvement.
But every time this SP is called it takes longer and longer (36,30,32,39,37,37,123,163,155,182€¦and so on(In seconds)).
All the sp is doing is as follows(8860000 is just to insure I don€™t delete to much). this sp is then called from in a while loop.
set @recnumber = (select top 1 recnumber from
(select top 100000 recnumber from TabletodeleteFROM where recnumber < 8860000
order by recnumber asc ) TabletodeleteFROM
order recnumber desc)
delete TabletodeleteFROM where recnumber < @recnumber
please help why is it taking longer and longer
Part 1: When there is ~ (tilde) and has any value after it then it goes into a new row and duplicating the other columns like the facility in the screenshot attached and new column having the sequence.
Part 2: When there is ^ (Caret) its a new column irrespective of a value present or not
CREATE TABLE [dbo].[Equipment](
[EQU] [VARCHAR](50) NOT NULL,
[Notes] [TEXT] NULL,
[Facility] [VARCHAR](50) NULL)
INSERT INTO [dbo].[Equipment] ([EQU] ,[Notes] ,[Facility])
SELECT '1001','BET I^BOBBETT,DAN^1.0^REGULAR^22.09^22.090~BET II^^^REGULAR^23.56^0~','USA' union
SELECT '998','BET I^JONES, ALANA^0.50^REGULAR^22.09^11.0450~BET II^^^REGULAR^23.56^0~','Canada' UNION
select '55','BET I^SLADE,ADAM F.^1.5^REGULAR^27.65^41.475~','USA'
SELECT * FROM dbo.Equipment
I created the table in excel and attached the screenshot for a clear picture as to what is required. I use text to Columns in excel to achieve this not sure if there is anything similar in sql.
I'm trying to import data in Excel into SQL Server table which you would think would be an absolute doddle seeing as they're both key Microsoft products in the BI family..One of the columns in Excel spreadsheet is Comments1 and a couple of the values in this column are over 300 characters in length yet when I set up the Excel source and then open Advanced Editor and look at Input and output properties this column has a data-type of Unicode string [DT_WSTR] with length of 255 which leads to the truncated error in the title.
I've researched this and on find going into the registry and updating the TypeGuessRows value from 8 to zero. I've done this and yet the data-type is still showing as Unicode string [DT_WSTR] with length of 255. I've even moved the row with the largest number of characters to the top of the spreadsheet and changed the TypeGuessRows value to 1 but the data-type still stays the same.I can't believe that it's soooo difficult to import data from one of Microsoft's key BI applications to another using their 'world-class' integration tool.
Can you not add a text column to a full text index?? If I change it to a nvarchar it works fine but if I change it to a text column it wont index. Anyone know how to fix this?
View 1 Replies View Related