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 <[email protected]> To: Konference PyCZ <[email protected]> Date: 05.05.2009 17:58 Subject: Re: [python] access soubor - vytvoření relací Sent by: [email protected] 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 <[email protected]> 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 <[email protected]> To: Konference PyCZ <[email protected]> Date: 05.05.2009 17:03 Subject: Re: [python] access soubor - vytvoření relací Sent by: [email protected] Přes ADO to vypadá jednoduše. Nenašel jsem ale způsob jak to donutit tvořit relace mezi tabulkami. 2009/5/5 <[email protected]> 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 <[email protected]> To: Konference PyCZ <[email protected]> Date: 04.05.2009 17:46 Subject: [python] access soubor - vytvoření relací Sent by: [email protected] 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 [email protected] http://www.py.cz/mailman/listinfo/python _______________________________________________ Python mailing list [email protected] http://www.py.cz/mailman/listinfo/python _______________________________________________ Python mailing list [email protected] http://www.py.cz/mailman/listinfo/python _______________________________________________ Python mailing list [email protected] http://www.py.cz/mailman/listinfo/python _______________________________________________ Python mailing list [email protected] http://www.py.cz/mailman/listinfo/python
_______________________________________________ Python mailing list [email protected] http://www.py.cz/mailman/listinfo/python
