Re: [python] access soubor - vytvoření relací
vzhledem k tomu ze se jedna o vytvoreni opravdu maleho a pokud mozno autonomniho meziclanku v DI procesu. Iron python asi nebude ono; ale rozhodne si to zkusim. 2009/5/5 > Ked su na to SQL-prikazy mohlo by to fungovat. > Mimochodom ked som zadal do Googlu > http://www.google.sk/search?hl=sk&q=data+relation+ADO&meta=&aq=f&oq= > tak mi to vyhodilo same linky suvisiace s ADO.NET - napriklad tu > > > http://www.c-sharpcorner.com/UploadFile/cvinodkumar/DataRelationVK11292005072318AM/DataRelationVK.aspx > > Predpokladam, ze ADO na to nema metody, iba ADO.NET. > > ADO.NET je odlisne od ADO. Napriklad namiesto objektu Recordset sa pouziva > DataSet, ktory moze obsahovat viac tabuliek. > Ale na vytvorenie relacie ma objekt typu DataSet metodu (ako vidiet na > priklade v horeuvedenom linku: DataSet.Relations.Add() ) > > ADO.NET som skusal s IronPythonom ( http://www.codeplex.com/IronPython ). > Ak by si to chcel skusit s IronPythonom, tak tu je maly zdrojak jak sa s > tym robi, Zvysok odkukas zo zdrojakov C# alebo VB.NET > (Negarantujem ci zdrojak 100% funguje, lebo teraz IronPython nainstalovany > nemam). > > > """ > Pouzitie ADO.NET pre pristup do AS/400 > s vyuzitim DataSet a DataAdapter > """ > csebk ='nejaka_as400' > userid='nejake_id' > pwd ='nejake_heslo' > > ### Pouzitie ADO.NET > import clr > import System > clr.AddReference("System.Data") > import System.Data > > from System.Data.OleDb import OleDbConnection as dbconnection > from System.Data.OleDb import OleDbDataAdapter as dbdataadapter > from System.Data import DataSet as dataset > > # Connection String > connectstr='PROVIDER=IBMDA400.DataSource.1;DATA SOURCE='+csebk+'; USER ID= > '+userid+'; PASSWORD='+pwd > #print connectstr > > # Vytvorit spojenie > dbconn=dbconnection(connectstr) > dbconn.Open() > > # Vytvorit SQL Statement > sqlStatement = "SELECT * FROM r000100T.r000270V" > #sqlStatement = "SELECT * FROM r000100T.p400100v" > # DataAdapter > da = dbdataadapter(sqlStatement, dbconn) > > # Vytvorit DataSet > #ds = System.Data.DataSet("MyDataSet") > ds=dataset("MyDataSet") > > # Naplnit Dataset > da.Fill(ds, "MyTable") > > # Vylistovat tabulky v DataSete* > for* table *in* ds.Tables: > *print* table > > # Vylistovat vybrane polia vo vsetkych riadkoch 1.tabulky DataSetu > count=0* > for* row *in* ds.Tables[0].Rows: > count +=1 > *print* "%10s %10s %10s %10s" % (row[0], row[1], row[2], row[3]) > * > print* "pocet viet v tabulke je: %d" % count > > # Ukoncit spojenie > dbconn.Close() > > > > > > > From: Ondrej Beranek > To: Konference PyCZ > Date: 05.05.2009 17:58 > Subject: Re: [python] access soubor - vytvoření relací Sent by: > python-boun...@py.cz > > -- > > > > Uz to odkoukavam tady: > * > **http://msdn.microsoft.com/en-us/library/bb243835.aspx*<http://msdn.microsoft.com/en-us/library/bb243835.aspx> > > pokusim se to tam naprat jako sadu SQL prikazu. > > 2009/5/5 <*rmik...@pss.sk* > > Jake relacie myslis? > S Accessom nepracujem, ale ak to co chces ide vseobecne cez ADO, tak sa to > da odkukat z nejakych prikladov napr. vo Visual Basicu a malo by to fungovat > aj v Pythone podobnym sposobom. > > > > From: Ondrej Beranek <*rain...@gmail.com* > To: > Konference > PyCZ <*pyt...@py.cz* > Date: 05.05.2009 17:03 Subject: Re: > [python] access soubor - vytvoření relací Sent by: > *python-boun...@py.cz* > > -- > > > > Přes ADO to vypadá jednoduše. Nenašel jsem ale způsob jak to donutit tvořit > relace mezi tabulkami. > > 2009/5/5 <*rmik...@pss.sk* > > Ja pouzivam ADO: > Priklad spracovanie (update) *.dbf suboru: > > # > """ > Spracovanie DBF databazy pomocou ADO > """ > import string > # Pouzitie ADO > import win32com.client > conn=win32com.client.Dispatch('ADODB.Connection') > # Connection String > DSN='Provider=Microsoft.Jet.OLEDB.4.0;Data Source=d:\Perl_Python\Database; > \ > Extended Properties=FoxPro 3.0;' > # print DSN > conn.Open(DSN) > rs = win32com.client.Dispatch('ADODB.Recordset') > rs_name = 'MyRecordset' > rs.CursorLocation = 3 > rs.Open("SELECT * FROM rkun000", conn,1,3) > > # Vypis tabulky a update > rs.MoveFirst() > count = 0* > while* 1: >*if* rs.EOF: > *break* >*else*: > # pocet viet > count
Re: [python] access soubor - vytvoření relací
Ked su na to SQL-prikazy mohlo by to fungovat. Mimochodom ked som zadal do Googlu http://www.google.sk/search?hl=sk&q=data+relation+ADO&meta=&aq=f&oq= tak mi to vyhodilo same linky suvisiace s ADO.NET - napriklad tu http://www.c-sharpcorner.com/UploadFile/cvinodkumar/DataRelationVK11292005072318AM/DataRelationVK.aspx Predpokladam, ze ADO na to nema metody, iba ADO.NET. ADO.NET je odlisne od ADO. Napriklad namiesto objektu Recordset sa pouziva DataSet, ktory moze obsahovat viac tabuliek. Ale na vytvorenie relacie ma objekt typu DataSet metodu (ako vidiet na priklade v horeuvedenom linku: DataSet.Relations.Add() ) ADO.NET som skusal s IronPythonom ( http://www.codeplex.com/IronPython ). Ak by si to chcel skusit s IronPythonom, tak tu je maly zdrojak jak sa s tym robi, Zvysok odkukas zo zdrojakov C# alebo VB.NET (Negarantujem ci zdrojak 100% funguje, lebo teraz IronPython nainstalovany nemam). """ Pouzitie ADO.NET pre pristup do AS/400 s vyuzitim DataSet a DataAdapter """ csebk ='nejaka_as400' userid='nejake_id' pwd ='nejake_heslo' ### Pouzitie ADO.NET import clr import System clr.AddReference("System.Data") import System.Data from System.Data.OleDb import OleDbConnection as dbconnection from System.Data.OleDb import OleDbDataAdapter as dbdataadapter from System.Data import DataSet as dataset # Connection String connectstr='PROVIDER=IBMDA400.DataSource.1;DATA SOURCE='+csebk+'; USER ID= '+userid+'; PASSWORD='+pwd #print connectstr # Vytvorit spojenie dbconn=dbconnection(connectstr) dbconn.Open() # Vytvorit SQL Statement sqlStatement = "SELECT * FROM r000100T.r000270V" #sqlStatement = "SELECT * FROM r000100T.p400100v" # DataAdapter da = dbdataadapter(sqlStatement, dbconn) # Vytvorit DataSet #ds = System.Data.DataSet("MyDataSet") ds=dataset("MyDataSet") # Naplnit Dataset da.Fill(ds, "MyTable") # Vylistovat tabulky v DataSete for table in ds.Tables: print table # Vylistovat vybrane polia vo vsetkych riadkoch 1.tabulky DataSetu count=0 for row in ds.Tables[0].Rows: count +=1 print "%10s %10s %10s %10s" % (row[0], row[1], row[2], row[3]) print "pocet viet v tabulke je: %d" % count # Ukoncit spojenie dbconn.Close() From: Ondrej Beranek To: Konference PyCZ Date: 05.05.2009 17:58 Subject: Re: [python] access soubor - vytvoření relací Sent by: python-boun...@py.cz Uz to odkoukavam tady: http://msdn.microsoft.com/en-us/library/bb243835.aspx pokusim se to tam naprat jako sadu SQL prikazu. 2009/5/5 Jake relacie myslis? S Accessom nepracujem, ale ak to co chces ide vseobecne cez ADO, tak sa to da odkukat z nejakych prikladov napr. vo Visual Basicu a malo by to fungovat aj v Pythone podobnym sposobom. From: Ondrej Beranek To: Konference PyCZ Date: 05.05.2009 17:03 Subject: Re: [python] access soubor - vytvoření relací Sent by: python-boun...@py.cz Přes ADO to vypadá jednoduše. Nenašel jsem ale způsob jak to donutit tvořit relace mezi tabulkami. 2009/5/5 Ja pouzivam ADO: Priklad spracovanie (update) *.dbf suboru: # """ Spracovanie DBF databazy pomocou ADO """ import string # Pouzitie ADO import win32com.client conn=win32com.client.Dispatch('ADODB.Connection') # Connection String DSN='Provider=Microsoft.Jet.OLEDB.4.0;Data Source=d:\Perl_Python\Database; \ Extended Properties=FoxPro 3.0;' # print DSN conn.Open(DSN) rs = win32com.client.Dispatch('ADODB.Recordset') rs_name = 'MyRecordset' rs.CursorLocation = 3 rs.Open("SELECT * FROM rkun000", conn,1,3) # Vypis tabulky a update rs.MoveFirst() count = 0 while 1: if rs.EOF: break else: # pocet viet count = count + 1 nazov = rs.Fields.Item('NAZOV').Value rs.Fields.Item('NAZOV').Value = string.capwords(nazov) print rs.Fields.Item('NAZOV').Value # update aktualnu vetu rs.Update() # next record rs.MoveNext() print "Pocet spracovanych viet v databaze = %d" % count # Ukoncit spojenie conn.Close() Na Accsess musis zmenit iba connection string - pohladaj si ho (mozno tu): http://www.connectionstrings.com/ http://www.carlprothman.net/Default.aspx?tabid=81 From: Ondrej Beranek To: Konference PyCZ Date: 04.05.2009 17:46 Subject: [python] access soubor - vytvoření relací Sent by: python-boun...@py.cz Ahoj, potřeboval bych nějak z python skriptu stvořit access databázi (mdb soubor) a aby toho nebylo dost potřeboval bych v ní ještě vytvořit relace. Je soubor datové výměny která probíhá denně. Ty relace stačí vyrobit až po vytvořeníé tabulek. Přítomnost accessu neni problem. Díky za všechny typy.___ Python mailing l
Re: [python] access soubor - vytvoření relací
Uz to odkoukavam tady: http://msdn.microsoft.com/en-us/library/bb243835.aspx pokusim se to tam naprat jako sadu SQL prikazu. 2009/5/5 > Jake relacie myslis? > S Accessom nepracujem, ale ak to co chces ide vseobecne cez ADO, tak sa to > da odkukat z nejakych prikladov napr. vo Visual Basicu a malo by to fungovat > aj v Pythone podobnym sposobom. > > > > > From: Ondrej Beranek > To: Konference PyCZ > Date: 05.05.2009 17:03 Subject: Re: [python] access soubor - vytvoření > relací > Sent by: python-boun...@py.cz > > -- > > > > Přes ADO to vypadá jednoduše. Nenašel jsem ale způsob jak to donutit tvořit > relace mezi tabulkami. > > 2009/5/5 <*rmik...@pss.sk* > > Ja pouzivam ADO: > Priklad spracovanie (update) *.dbf suboru: > > # > """ > Spracovanie DBF databazy pomocou ADO > """ > import string > # Pouzitie ADO > import win32com.client > conn=win32com.client.Dispatch('ADODB.Connection') > # Connection String > DSN='Provider=Microsoft.Jet.OLEDB.4.0;Data Source=d:\Perl_Python\Database; > \ > Extended Properties=FoxPro 3.0;' > # print DSN > conn.Open(DSN) > rs = win32com.client.Dispatch('ADODB.Recordset') > rs_name = 'MyRecordset' > rs.CursorLocation = 3 > rs.Open("SELECT * FROM rkun000", conn,1,3) > > # Vypis tabulky a update > rs.MoveFirst() > count = 0* > while* 1: >*if* rs.EOF: > *break* >*else*: > # pocet viet > count = count + 1 > nazov = rs.Fields.Item('NAZOV').Value > rs.Fields.Item('NAZOV').Value = string.capwords(nazov) > *print* rs.Fields.Item('NAZOV').Value > # update aktualnu vetu > rs.Update() > # next record > rs.MoveNext() * > > print* "Pocet spracovanych viet v databaze = %d" % count > > # Ukoncit spojenie > conn.Close() > > > Na Accsess musis zmenit iba connection string - pohladaj si ho (mozno tu): > * > **http://www.connectionstrings.com/* <http://www.connectionstrings.com/> * > **http://www.carlprothman.net/Default.aspx?tabid=81*<http://www.carlprothman.net/Default.aspx?tabid=81> > > > > From: Ondrej Beranek <*rain...@gmail.com* > To: > Konference > PyCZ <*pyt...@py.cz* > Date: 04.05.2009 17:46 Subject: > [python] > access soubor - vytvoření relací Sent by: > *python-boun...@py.cz* > > -- > > > > Ahoj, > > potřeboval bych nějak z python skriptu stvořit access databázi (mdb soubor) > a aby toho nebylo dost potřeboval bych v ní ještě vytvořit relace. Je soubor > datové výměny která probíhá denně. Ty relace stačí vyrobit až po vytvořeníé > tabulek. > Přítomnost accessu neni problem. > > Díky za všechny typy.___ > > Python mailing list* > **pyt...@py.cz* > *http://www.py.cz/mailman/listinfo/python*<http://www.py.cz/mailman/listinfo/python> > > > ___ > Python mailing list* > **pyt...@py.cz* * > **http://www.py.cz/mailman/listinfo/python*<http://www.py.cz/mailman/listinfo/python> > ___ > Python mailing list > Python@py.cz > http://www.py.cz/mailman/listinfo/python > > > ___ > Python mailing list > Python@py.cz > http://www.py.cz/mailman/listinfo/python > ___ Python mailing list Python@py.cz http://www.py.cz/mailman/listinfo/python
Re: [python] access soubor - vytvoření relací
Jake relacie myslis? S Accessom nepracujem, ale ak to co chces ide vseobecne cez ADO, tak sa to da odkukat z nejakych prikladov napr. vo Visual Basicu a malo by to fungovat aj v Pythone podobnym sposobom. From: Ondrej Beranek To: Konference PyCZ Date: 05.05.2009 17:03 Subject: Re: [python] access soubor - vytvoření relací Sent by: python-boun...@py.cz Přes ADO to vypadá jednoduše. Nenašel jsem ale způsob jak to donutit tvořit relace mezi tabulkami. 2009/5/5 Ja pouzivam ADO: Priklad spracovanie (update) *.dbf suboru: # """ Spracovanie DBF databazy pomocou ADO """ import string # Pouzitie ADO import win32com.client conn=win32com.client.Dispatch('ADODB.Connection') # Connection String DSN='Provider=Microsoft.Jet.OLEDB.4.0;Data Source=d:\Perl_Python\Database; \ Extended Properties=FoxPro 3.0;' # print DSN conn.Open(DSN) rs = win32com.client.Dispatch('ADODB.Recordset') rs_name = 'MyRecordset' rs.CursorLocation = 3 rs.Open("SELECT * FROM rkun000", conn,1,3) # Vypis tabulky a update rs.MoveFirst() count = 0 while 1: if rs.EOF: break else: # pocet viet count = count + 1 nazov = rs.Fields.Item('NAZOV').Value rs.Fields.Item('NAZOV').Value = string.capwords(nazov) print rs.Fields.Item('NAZOV').Value # update aktualnu vetu rs.Update() # next record rs.MoveNext() print "Pocet spracovanych viet v databaze = %d" % count # Ukoncit spojenie conn.Close() Na Accsess musis zmenit iba connection string - pohladaj si ho (mozno tu): http://www.connectionstrings.com/ http://www.carlprothman.net/Default.aspx?tabid=81 From: Ondrej Beranek To: Konference PyCZ Date: 04.05.2009 17:46 Subject: [python] access soubor - vytvoření relací Sent by: python-boun...@py.cz Ahoj, potřeboval bych nějak z python skriptu stvořit access databázi (mdb soubor) a aby toho nebylo dost potřeboval bych v ní ještě vytvořit relace. Je soubor datové výměny která probíhá denně. Ty relace stačí vyrobit až po vytvořeníé tabulek. Přítomnost accessu neni problem. Díky za všechny typy.___ Python mailing list Python@py.cz http://www.py.cz/mailman/listinfo/python ___ Python mailing list Python@py.cz http://www.py.cz/mailman/listinfo/python ___ Python mailing list Python@py.cz http://www.py.cz/mailman/listinfo/python ___ Python mailing list Python@py.cz http://www.py.cz/mailman/listinfo/python
Re: [python] access soubor - vytvoření relací
Přes ADO to vypadá jednoduše. Nenašel jsem ale způsob jak to donutit tvořit relace mezi tabulkami. 2009/5/5 > Ja pouzivam ADO: > Priklad spracovanie (update) *.dbf suboru: > > # > """ > Spracovanie DBF databazy pomocou ADO > """ > import string > # Pouzitie ADO > import win32com.client > conn=win32com.client.Dispatch('ADODB.Connection') > # Connection String > DSN='Provider=Microsoft.Jet.OLEDB.4.0;Data Source=d:\Perl_Python\Database; > \ > Extended Properties=FoxPro 3.0;' > # print DSN > conn.Open(DSN) > rs = win32com.client.Dispatch('ADODB.Recordset') > rs_name = 'MyRecordset' > rs.CursorLocation = 3 > rs.Open("SELECT * FROM rkun000", conn,1,3) > > # Vypis tabulky a update > rs.MoveFirst() > count = 0* > while* 1: >*if* rs.EOF: > *break* >*else*: > # pocet viet > count = count + 1 > nazov = rs.Fields.Item('NAZOV').Value > rs.Fields.Item('NAZOV').Value = string.capwords(nazov) > *print* rs.Fields.Item('NAZOV').Value > # update aktualnu vetu > rs.Update() > # next record > rs.MoveNext() > * > print* "Pocet spracovanych viet v databaze = %d" % count > > # Ukoncit spojenie > conn.Close() > > > Na Accsess musis zmenit iba connection string - pohladaj si ho (mozno tu): > http://www.connectionstrings.com/ > http://www.carlprothman.net/Default.aspx?tabid=81 > > > > > From: Ondrej Beranek To: Konference PyCZ < > python@py.cz> Date: 04.05.2009 17:46 Subject: [python] access soubor - > vytvoření relací Sent by: python-boun...@py.cz > -- > > > > Ahoj, > > potřeboval bych nějak z python skriptu stvořit access databázi (mdb soubor) > a aby toho nebylo dost potřeboval bych v ní ještě vytvořit relace. Je soubor > datové výměny která probíhá denně. Ty relace stačí vyrobit až po vytvořeníé > tabulek. > Přítomnost accessu neni problem. > > Díky za všechny typy.___ > Python mailing list > Python@py.cz > http://www.py.cz/mailman/listinfo/python > > > ___ > Python mailing list > Python@py.cz > http://www.py.cz/mailman/listinfo/python > ___ Python mailing list Python@py.cz http://www.py.cz/mailman/listinfo/python
Re: [python] access soubor - vytvoření relací
Ja pouzivam ADO: Priklad spracovanie (update) *.dbf suboru: # """ Spracovanie DBF databazy pomocou ADO """ import string # Pouzitie ADO import win32com.client conn=win32com.client.Dispatch('ADODB.Connection') # Connection String DSN='Provider=Microsoft.Jet.OLEDB.4.0;Data Source=d:\Perl_Python\Database; \ Extended Properties=FoxPro 3.0;' # print DSN conn.Open(DSN) rs = win32com.client.Dispatch('ADODB.Recordset') rs_name = 'MyRecordset' rs.CursorLocation = 3 rs.Open("SELECT * FROM rkun000", conn,1,3) # Vypis tabulky a update rs.MoveFirst() count = 0 while 1: if rs.EOF: break else: # pocet viet count = count + 1 nazov = rs.Fields.Item('NAZOV').Value rs.Fields.Item('NAZOV').Value = string.capwords(nazov) print rs.Fields.Item('NAZOV').Value # update aktualnu vetu rs.Update() # next record rs.MoveNext() print "Pocet spracovanych viet v databaze = %d" % count # Ukoncit spojenie conn.Close() Na Accsess musis zmenit iba connection string - pohladaj si ho (mozno tu): http://www.connectionstrings.com/ http://www.carlprothman.net/Default.aspx?tabid=81 From: Ondrej Beranek To: Konference PyCZ Date: 04.05.2009 17:46 Subject: [python] access soubor - vytvoření relací Sent by: python-boun...@py.cz Ahoj, potřeboval bych nějak z python skriptu stvořit access databázi (mdb soubor) a aby toho nebylo dost potřeboval bych v ní ještě vytvořit relace. Je soubor datové výměny která probíhá denně. Ty relace stačí vyrobit až po vytvořeníé tabulek. Přítomnost accessu neni problem. Díky za všechny typy.___ Python mailing list Python@py.cz http://www.py.cz/mailman/listinfo/python ___ Python mailing list Python@py.cz http://www.py.cz/mailman/listinfo/python