André Krijnen

Archive for July, 2009

Timestamp and validation

by on Jul.13, 2009, under Programming, sql server, SSIS

Timestamp in SQL Server:

1) The SQL Server timestamp data type has nothing to do with times or dates. SQL Server timestamps are binary numbers that indicate the relative sequence in which data modifications took place in a database. The timestamp data type was originally implemented to support the SQL Server recovery algorithms.

2) It further states Never use timestamp columns in keys, especially primary keys, because the timestamp value changes every time the row is modified.

For a customer we made some changes. And the situation is as follows. We exported the data to excel. Multiple tabels are exported. We changed the data in the excel file and the customer validated the data. We also did export the timetamp with the data. Why? Because we had to import it again to the database. If a Timestamp changed, we should not update the data from the excel file. That’s why.

Problem situation:

Because a timestamp isn’t a varchar, or numeric value, but a binary(8) value we had to convert it. Because we import the data by SSIS back into the database. But the data we imported is from a flat text file. So every column was read as a DT_STR by SSIS, and timestamp in the stored procedure was a datatype of Timestamp. So we did a comparison of a varchar against a timestamp. Well that situation didn’t work out that well.

So what we did was to change the parameter of the stored procedure to varchar. Well SQL Server can’t handle a comparison of varchar against timestamp inside the stored procedure. Of course, so we did try it to convert it to a varbinary(8) or binary(8) and then validate it against the timestamp. Well that didn’t work out that well.

declare @timestamp varbinary(8)
set @timestamp = CONVERT(varbinary(8), '0x0000000001F4AD88')
print @timestamp

returned: 0x3078303030303030

declare @timestamp varbinary(8)
set @timestamp = CONVERT(varbinary(8), 0x0000000001F4AD88)

print @timestamp

returned: 0x0000000001F4AD88

That comparison didn’t work well. So I had to figure an other way to validate on timestamp. When I almost lost my hope I wrote a function in SQL Server.

create function [dbo].[sp_hexadecimal] ( @var varbinary(255) )
returns varchar(255)
as

begin
      declare @charval varchar(255)
      declare @i int
      declare @length int
      declare @hex char(16)

      select @charval = '0x'
      select @i = 1
      select @length = datalength(@var)
      select @hex = '0123456789abcdef'

      while (@i <= @length)
      begin
            declare @tempint int
            declare @firstint int
            declare @secondint int

            select @tempint = convert(int, substring(@var,@i,1))
            select @firstint = floor(@tempint/16)
            select @secondint = @tempint - (@firstint*16)
            select @charval = @charval +
            substring(@hex, @firstint+1, 1) +
            substring(@hex, @secondint+1, 1)

            select @i = @i + 1
      end

return ( @charval )
end

So what I did was the other. I managed to validate the data on the other way.

sphexadecimal1
it did the trick...

Leave a Comment :, , , , , , , , , more...

DataFlow in SSIS and OLE DB Command

by on Jul.11, 2009, under Programming, sql server, SSIS

I’ve been working for the first time with a DataFlow of updating data in a SQL Database with SSIS. The only problem is that a colleaque did made it, but he forget something with it. After reading some documentation about the DataFlow in SSIS and the using of a OLE DB command to execute a Stored Procedure I came to a certain problem.

The problem is that a OLE DB Command can execute a Stored Procedure, but the error handling is really a issue. Why, you can give a output parameter with it, but for some reason it doesn’t work well. The question is why they didn’t use a SQL Task to execute a Stored Procedure. Now I’m searching why my stored procedure isn’t fired well.

Well the problem is that the stored procedure contains a error handling not supported by the OLE DB Command. And when you have error handling handled by you SSIS you get a Error Number 0 returned. So your searching for a problem with Error number 0? That’s really crap. So I get rid of the Error handling in the stored procedure, and well the funny thing is that the stored procedure really is fired well and with filled parameters. But another problem is now that there are not enough parameters filled to execute the Stored Procedure properly.

So I have to search for that issue to solve the problem….

Leave a Comment :, , , , , , , more...

Van werken wordt je niet moe …

by on Jul.11, 2009, under General, life

Wat me altijd verbaast van mensen die zeggen dat ze moe zijn van het werken? Is dat psychisch of lichamelijk? Te weinig slapen, problemen, te weinig goed eten, noem het maar op? Waar ligt dat nou aan? Ik kan het af en toe niet bevatten… Ligt het misschien aan de werkdruk, of aan de manier van werken? Ligt het aan de mensen waarmee je werkt?

Het zijn allemaal van die dingen die parte zouden kunnen spelen als je moe bent… Ik zelf wordt echt niet moe van werken, het tegendeel zelfs… ik krijg er energie van… iedere dag weer ben ik blij dat ik kan werken, en hoop ik altijd dat er teveel werk ligt. De reden dat ik hoop dat er teveel ligt dat betekend dat ik er tegen aan mag gaan… Yes, mensen kunnen dat af en toe niet bevatten, maar ik vind het heerlijk als ik een druk op me heb.

of ik nou 40 uur of 60 uur moet werken dat maakt me niet eens uit… het belangrijkste is dat ik kan werken op de manier zoals me dat zelf bevalt, en op de snelheid die mij bevalt. Als ik in een te laag tempo moet gaan werken dan trek ik dat niet, want daar wordt ik moe van… dan krijg je het gevoel dat ik bezig moet zijn om maar bezig te zijn. Dan moet je op een tempo werken wat je niet ligt.

Te weinig slapen kan wel resulteren in een vermoeidheid, maar dat heeft dan niets met werken te maken, maar met de gesteldheid van een persoon. Aan me eet patroon zal het niet liggen, want ik eet genoeg om 2 tot 3 mensen te voeden, hahaha.

Neej, je wordt niet moe van werken, je wordt moe van alles daarom heen. Een relatie wat niet loopt, conflicten op het werk, het werk bevalt je niet, je slaapt te weinig, noem het maar op. En als mensen zeggen dat ze moe zijn van werken dan kun je je afvragen of ze niet ergens anders moe van zijn… ls het goed is doe je je werk wat je graag doet, en waar je goed in bent. En af en toe zul je dingen doen die je niet bevallen, maar dat is nu eenmaal het werkleven… heeft niets mee te maken dat je moe bent van werken, maar eerder dingen doet waar je niet goed in bent, waar je dus meer je hersenen moet gebruiken…

Ik kan begrijpen dat je wel lichamelijk moe bent, we worden immers allemaal wel een dagje ouder, en voor mensen die lichamelijk werk verzetten die zullen het heus wel zwaarder hebben… maar er is niets zo fijn als lichamelijk moe zijn… lichamelijk moe betekend dat je lichaam wat te doen heeft gehad… en dat is alleen maar positief. Dat geeft je ook een voldoening, althans in mijn geval dan… voor een ander kan ik niet spreken.

Waar ik me wel aan stoor is dat mensen lopen te zeiken dat ze teveel werk op hun bordje hebben, of dat ze helemaal vol zitten in hun hersenpan… houdt in dat ze het gewoonweg niet aan kunnen, en dus in weze niet geschikt zijn voor het werk wat ze beoefenen…

Waar ik wel moe van kan worden is het lange reizen in de auto om naar een klant toe te gaan, omdat je er zo vroeg uit moet en ‘s avonds laat pas thuis komt, maar dat heeft dan weer niets met werken te maken… dat kost best veel energie, want je bent gewoonweg op pad zonder eigenlijk daadwerkelijk bezig te zijn met werken. Ja werken bijv in je auto, omdat er genoeg mensen zijn op de weg waar je gewoon voor moet opletten dat ze niet spontaan naar links komen zetten als je naast ze rijdt, of dat er weer is een debiel is die niet kan rijden. Dat zijn van die dingen waar je gewoon weg op moet letten en dat kost energie.

Ach zo kan ik uren blijven schrijven over dit soort zaken, maar ik vind het heerlijk om te werken… het geeft me voldoening om een klant vrolijk te zien als je een product oplevert, of dat je problemen verhelpt… dat is een doelstelling die ik mezelf iedere dag weer stel. Gewoon dingen bewerkstelligen waar je mensen mee kan opvrolijken.

Leave a Comment :, , , , , , , , more...

how to exclude paths in your #sharepoint farm

by on Jul.03, 2009, under blog


Warning: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead in E:\Vhosts\mysticslayer.com\httpdocs\wp-content\plugins\highlight-source-pro\highlight_source_pro.php on line 128
Leave a Comment :, , , , , , , , , , , , more...

Looking for something?

Use the form below to search the site:

Still not finding what you're looking for? Drop a comment on a post or contact us so we can take care of it!

Blogroll

A few highly recommended websites...