Thread View: alt.pl.comp.lang.csharp
2 messages
2 total messages
Started by saper/nolin11
Sun, 25 Dec 2011 19:43
Konwersja typu data z mssql do (big)int i insert (z pogranicza VC#)
Author: saper/nolin11
Date: Sun, 25 Dec 2011 19:43
Date: Sun, 25 Dec 2011 19:43
37 lines
2439 bytes
2439 bytes
Witam, Najpierw, wesołych świąt wszystkim czytającym :) Ale do sedna, mam 3 tabele w bazie danych które zawierają po paręset tysięcy rekordów i jak robię zrzut danych to Management Studio po każdych 100 rekordach wrzuca mi w skrypt: GO print 'Processed blebleble total records.' Co bardzo spowalnia ładowanie takiego skryptu i muszę też ręcznie poprawić parę rzeczy :/ ,ażebym mógł go użyć do aktualizacji. Więc napisałem programik na konsolę co robi zrzut tych tabel do pliku sql wedle moich wytycznych (zmiana nazwy tabeli, bazy, i dodaje GO | print co 1/100 rekordów (co 1% ale i to mogę sobie zmienić jak coś :) )) i utknąłem z kolumną typu "date". Nie potrafię skonwertować pola date do typu int/long tak ,ażeby można było potem tą datę zaimportować z pliku sql do bazy mssql. Używam w programie do pobierania danych sqlDataAdapter i DataTable jak ma to jakieś znaczenie. Dlaczego nie chcę użyć formatu daty, ponieważ użytkownik może mieć inny locale i baza nie przyjmie daty i się wyłoży aktualizacja. Chciałem to rozwiązać tak jak zrobiony jest "dump" przez Management studio: INSERT INTO .... (..., [data]) VALUES (...., CAST(0x90340B00 AS Date)); Ale nie potrafię określić jak jest wyliczana ta wartość daty: 0x90340B00 ( jest to data: 4.08.2011 ). Przeglądałem już MSDNa pod kątem typu DATE MSSQLa ale nie przybliżyło mnie to do jakiegoś rozwiązania :/ -- Saper/nolin11 nolinno11_usun_to@gmail.com gg:4476700
Re: Konwersja typu data z mssql do (big)int i insert (z pogranicza VC#)
Author: saper/nolin11
Date: Sun, 25 Dec 2011 20:32
Date: Sun, 25 Dec 2011 20:32
45 lines
2848 bytes
2848 bytes
On 2011-12-25 20:43, saper/nolin11 wrote: > Witam, > > > Najpierw, wesołych świąt wszystkim czytającym :) > > Ale do sedna, mam 3 tabele w bazie danych które zawierają po paręset > tysięcy rekordów i jak robię zrzut danych to Management Studio po > każdych 100 rekordach wrzuca mi w skrypt: > GO > print 'Processed blebleble total records.' > Co bardzo spowalnia ładowanie takiego skryptu i muszę też ręcznie > poprawić parę rzeczy :/ ,ażebym mógł go użyć do aktualizacji. > > Więc napisałem programik na konsolę co robi zrzut tych tabel do pliku > sql wedle moich wytycznych (zmiana nazwy tabeli, bazy, i dodaje GO | > print co 1/100 rekordów (co 1% ale i to mogę sobie zmienić jak coś :) )) > i utknąłem z kolumną typu "date". > Nie potrafię skonwertować pola date do typu int/long tak ,ażeby można > było potem tą datę zaimportować z pliku sql do bazy mssql. > Używam w programie do pobierania danych sqlDataAdapter i DataTable jak > ma to jakieś znaczenie. > > Dlaczego nie chcę użyć formatu daty, ponieważ użytkownik może mieć inny > locale i baza nie przyjmie daty i się wyłoży aktualizacja. Chciałem to > rozwiązać tak jak zrobiony jest "dump" przez Management studio: > INSERT INTO .... (..., [data]) VALUES (...., CAST(0x90340B00 AS Date)); > > Ale nie potrafię określić jak jest wyliczana ta wartość daty: 0x90340B00 > ( jest to data: 4.08.2011 ). > Przeglądałem już MSDNa pod kątem typu DATE MSSQLa ale nie przybliżyło > mnie to do jakiegoś rozwiązania :/ > > Sam sobie odpowiem :D ,jednak po kolacji lepiej się myśli :D Rozwiązanie przez dodanie kolumny do wyniku zapytania sql: SELECT *,CONVERT(VARBINARY, [data], 2) AS [data2] FROM [tabela1] :) -- Saper/nolin11 nolinno11_usun_to@gmail.com gg:4476700
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads