skrypt .bat

Odpowiedz Nowy wątek
2009-05-26 09:49
kososki2
0

witam,
musze napisać prosty skrypt .bat który będzie mi wczytywał duzo insertów do bazy
ma ktoś jakiś pomysł jak to zrobić

Pozostało 580 znaków

2009-05-26 11:05
ja3
0

Zawsze (chyba) do bazy jest dołączony jakiś interfejs konsolowy. Wpisz w bacie komendę logowania do bazy a potem te inserty, wszystko.

Pozostało 580 znaków

2009-05-26 11:27
kososki2
0

tyle to też wiem, chodzi mi o skrypt .bat, w którym będę odpalał polecenie sql, jak to zrobić to w sumie chyba wiem, tyle że tych insertów będzie sporo ponad 50k, kazdy z ok. 150kolumnami, plików będzie tez trochę, co bym potrzebował to zrobić jakiś pasek postępu, cokolwiek, jakaś forma informacji dla użytkownika ile do tej pory wczytało linii (1 linia = 1 insert) z pliku

Pozostało 580 znaków

2009-05-26 13:10
0

Ale.. po co? Czemu nie moze to byc skrypt bat?

A przede wszystkim, jaka baza danych?


<font color="red">Konto porzucone</span>

Dzięki wszystkim forumowiczom za lata wspólnych dyskusji; miłej zabawy w programowanie!
Sławomir 'Szczawik' Włodkowski

Pozostało 580 znaków

2009-05-26 14:09
ja3
0

Człowieku a co więcej mogę Ci powiedzieć jak nie wiem jaka baza.

Tu masz o Firebirdzie http://www.destructor.de/firebird/isql.htm

Pozostało 580 znaków

2009-05-26 14:52
kososki2
0

baza oracla, samo polecenie wiem jak ma mniej więcej wyglądać
chyba coś takiego :

sqlplus user/[email protected]_hosta:1521/sid <nazwa pliku.sql

co mnie bardziej interesuje to jak w trakcie wykonywania tego skryptu gdy będą "leciały" kolejne inserty, wypisywać w konsoli postęp procentowy, lub jakiś inny, choćby info, że wczytano x krotek, co np. 1000 insertów.

Pozostało 580 znaków

2009-05-26 16:38
Rev
0

I jeszcze może frytki do tego ;)?


Pozostało 580 znaków

2009-05-26 17:15
0

Podziel ten plik na mniejsze czesci (nie wiem czy w windowsie sa do tego jakies polecenia), a potem wczytuj pokolei po jednej czesci i informuj o postepie. Wygladalo by to tak:

-podziel plik sql
-dodaj zapytania z pliku 1.sql
-wypisz (przykladowo) 10%
-dodaj zapytania z pliku 2.sql
(...)

Pozostało 580 znaków

2009-06-14 22:39
0

no to proponuję nie .bat tylko .vbs, coś w deseń

Dim strSrv: strSrv="sqlserver,1433"
Dim strDB: strDB="baza"
Dim strLogin: strLogin="sa"
Dim strPass: strPass="haselko"

set objConn=CreateObject("ADODB.Connection")
objConn.Provider="SQLOLEDB.1;Password="&strPass&";Persist Security Info=True;User ID="&strLogin&";Initial Catalog="&strDB&";Data Source="&strSrv&""
objConn.open

set objComm=CreateObject("ADODB.Command")
objComm.ActiveConnection = objConn
'objComm.Properties("Page Sice")=1000

objComm.CommandText="update uzytkownicy set haslo='zam' where nazwisko = 'serwis';"
set objRS = objComm.Execute

objComm.CommandText="select * from uzytkownicy order by nazwisko;"
set objRS = objComm.Execute

While Not objRS.EOF
Wscript.Echo objRS.Fields(2).Value & " " & objRS.Fields(1)
' Wscript.Echo objRS.Items("nazwisko").Value & " " & objRS.Fields(1)
objRS.MoveNext
wend

objConn.Close

MsgBox("Zapytanie wykonane")

oczywiście teraz należy dorobić ładowanie insertów z pliku .sql, w pętelce pokazać jakiś progress

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0