Re: [python] access soubor - vytvoření relací

2009-05-05 Tema obsahu Ondrej Beranek
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.carlprothman.net/Default.aspx?tabid=81




  From: Ondrej Beranek rain...@gmail.com 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í

2009-05-05 Tema obsahu RMiklos
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 python@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 = 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 rain...@gmail.com 
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

___
Python mailing list
Python@py.cz
http://www.py.cz/mailman/listinfo/python

Re: [python] access soubor - vytvoření relací

2009-05-05 Tema obsahu Ondrej Beranek
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 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 python@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* 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* rain...@gmail.com  To: 
 Konference
 PyCZ *pyt...@py.cz* python@py.cz  Date: 04.05.2009 17:46  Subject: 
 [python]
 access soubor - vytvoření relací  Sent by: 
 *python-boun...@py.cz*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* Python@py.cz
 *http://www.py.cz/mailman/listinfo/python*http://www.py.cz/mailman/listinfo/python


 ___
 Python mailing list*
 **pyt...@py.cz* Python@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í

2009-05-05 Tema obsahu RMiklos
Ked su na to SQL-prikazy mohlo by to fungovat.
Mimochodom ked som zadal do Googlu 
http://www.google.sk/search?hl=skq=data+relation+ADOmeta=aq=foq=
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 rain...@gmail.com
To:
Konference PyCZ python@py.cz
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 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 python@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 = 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 rain...@gmail.com 
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