Oglądasz wypowiedzi znalezione dla frazy: Microsoft Jet 4.0





Temat: SQL Tabela

(...)
| No to nie mo?na by3o od razu pisaa ?e chodzi o .NET? Chyba ntg (to jest
| grupa Accesowo - VBA-owa), ale jakby? spróbowa3 analogicznie do tego:

| Dim cn As New Data.OleDb.OleDbConnection

| cn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=<tu
| ?cie?ka do mdb;Persist Security Info=True"

| Dim cmd As New Data.OleDb.OleDbCommand("select * from <tu nazwa
| tabeli",
| cn)
| cmd.Connection.Open()
| Try
| cmd.ExecuteReader()
(...)

| SQL to kiepski pomysł dla JET, lepszy to ADOX

Po cholerę ładować dodatkową bibliotekę, mało kompatybilną z filozofią
.NET, by przekonać się że jakaś tabela istnieje?
Jednak też uważam, że opieranie się na obsłudzę błędu jest mało eleganckim
(a w .net mało wydajnym rozwiązaniem), w zamian proponowałbym skorzystanie
z jakiegoś schematu, np.

  OleDbConnection conn = new OleDbConnection(connString);

  conn.Open();

  DataTable schemaTable =
   conn.GetOleDbSchemaTable(
   OleDbSchemaGuid.Tables,
   new object[] {null, null, null, "TABLE"});

  ArrayList result = new ArrayList();

  foreach(DataRow dr in schemaTable.Rows)
  {
   string tableName = dr[2].ToString();
   result.Add(tableName);
  }

  conn.Close();
  return result;

Innym rozwiązaniem, choć mniej zalecanym, jest skorzystanie z tabel
systemowych, np.:

Select
  [Name]
From
  MSysObjects
Where
  Type = 6

Jest to ryzykowne z uwagi na to, że w przyszłości coś się może zmienić w
tabelach systemowych.

Pozdrawiam
Grzegorz

A jakbym chciał zrobić w ten sposób ??

OleDbConnection^ con;

con = gcnew OleDbConnection("Provider=Microsoft.JET.OLEDB.4.0;Data source =
"".\data\data.mdb;Jet OLEDB:Engine Type=5;");

con-Open();

OleDbCommand^ myCommand = gcnew OleDbCommand(mySelectQuery,con);

myCommand-CommandText = "SELECT name FROM sysobjects WHERE type = 'U' AND
name = 'Customers'";

OleDbDataReader^ myReader = myCommand-ExecuteReader();

if (myReader-Read())

System::Windows::Forms::MessageBox::Show ("Table Exists!");

else

System::Windows::Forms::MessageBox::Show ("Does not exist!");

tylko przy wykonywaniu:
myCommand-CommandText = "SELECT name FROM sysobjects WHERE type = 'U' AND
name = 'Customers'";

otrzymuje błąd:

"Aparat bazy danych Microsoft Jet nie może znaleźć tabeli wejściowej lub
kwerendy 'mdb'. Sprawdź, czy ona istnieje oraz czy nazwa jest poprawnie
napisana."

pozdrawiam

Przeczytaj wszystkie posty z tego wątku



Temat: SQL Tabela
Dnia 27-01-2006 o 00:10:37 Krzysztof Naworyta <k.nawor@datacomp.com.pl 
napisał:


Juzer Przemysław Rachwał <prach@gazeta.plnapisał

|| jak sprawdziĂŚ czy istnieje tabela w bazie danyc za pomocÂą polecenia  
SQL
|| ??

| SELECT Count(MSysObjects.Id) AS Id
| FROM MSysObjects
| WHERE (((MSysObjects.Name) Not Like "MSys*" And
| (MSysObjects.Name)="tWoj") AND ((MSysObjects.Type)=1));
|
| "tWoj" - nazwa tabeli
|
| jeżeli jest -1, w przeciwnym wypadku 0

ech, rynce opadają ...
Wytrzeszcz wzrok i znajdź i wyrzuć zbędny kawałek z warunku:
(...)
   WHERE
       Name Not Like "MSys*"
   And
       Name="tWoj"

:)))

Panie Rachwał, do excela, do excela ! To nie ta grupa !


stary odpier.... się z łachy swojej i pokaż posta ze swoim rozwiązaniem  
SQL-owym tego banalnego problemu.... nie ma o jak  szkoda...


Już pisano: formatowanie sql ! Brak owego to taka sama lameriada jak brak
wcięć w kodzie ! (mimo, że czasem działa! :))) )


to nie miało być formatowane... jak byś nie wiedział - a wiesz o tym  
doskonale to z siatki QBE


Ale na poważnie: Sprawdzałeś Waść czy z dowolnego środowiska masz dostęp
do tabel systemowych mdb/mde ?


tak


Bo to, co w access'ie działa, gdzie indziej raczej ni-hu-hu!


a tu się mylisz bo nie sprawdziłeś dokładnie

Provider=Microsoft.Jet.OLEDB.4.0;
*User ID=PRach01;*
Data Source=C:Documents and SettingsAdministratorMoje  
dokumentydb6.mdb;Mode=Share Deny None;
Extended Properties="";
*Jet OLEDB:System database=d:system.mdw;*
Jet OLEDB:Registry Path="";
Jet OLEDB:Engine Type=5;
Jet OLEDB:Database Locking Mode=1;
Jet OLEDB:Global Partial Bulk Ops=2;
Jet OLEDB:Global Bulk Transactions=1;
Jet OLEDB:New Database Password="";
Jet OLEDB:Create System Database=False;
Jet OLEDB:Encrypt Database=False;
Jet OLEDB:Don't Copy Locale on Compact=False;
Jet OLEDB:Compact Without Replica Repair=False;
Jet OLEDB:SFP=False


A tu o owo "gdzie indziej" się rozchodzi ...


hmm

SELECT
        Count(MSysObjects.Id) AS Id
 FROM
        MSysObjects
WHERE
        MSysObjects.Name Not Like "MSys*" And
        MSysObjects.Name="tWoj" AND
        MSysObjects.Type=1
WITH OWNERACCESS OPTION;

można też tak.....

Przeczytaj wszystkie posty z tego wątku



Temat: SQL Tabela
Juzer Przemysław Rachwał <prach@gazeta.plnapisał

(...)
|| ech, rynce opadają ...
|| Wytrzeszcz wzrok i znajdź i wyrzuć zbędny kawałek z warunku:
|| (...)
||    WHERE
||        Name Not Like "MSys*"
||    And
||        Name="tWoj"
||
|| :)))
||
|| Panie Rachwał, do excela, do excela ! To nie ta grupa !
|
| stary odpier.... się z łachy swojej i pokaż posta ze swoim rozwiązaniem
| SQL-owym tego banalnego problemu.... nie ma o jak  szkoda...

Wiesz, jestem na tej grupie od ponad 6 lat. Tego sql'a pisałem już pińcet
razy!
I dlatego nie chce mi się go pisać pińcet pierwszy raz.

|| Już pisano: formatowanie sql ! Brak owego to taka sama lameriada jak
|| brak wcięć w kodzie ! (mimo, że czasem działa! :))) )
|
| to nie miało być formatowane... jak byś nie wiedział - a wiesz o tym
| doskonale to z siatki QBE

Ależ od nieomylnego Rachwała można chyba wymagać rzeczy podstawowych?

|| Ale na poważnie: Sprawdzałeś Waść czy z dowolnego środowiska masz
|| dostęp do tabel systemowych mdb/mde ?
|
| tak
|
|| Bo to, co w access'ie działa, gdzie indziej raczej ni-hu-hu!

http://groups.google.pl/group/pl.comp.bazy-danych.msaccess/browse_thr...

| a tu się mylisz bo nie sprawdziłeś dokładnie
|
| Provider=Microsoft.Jet.OLEDB.4.0;
| *User ID=PRach01;*
| Data Source=C:Documents and SettingsAdministratorMoje
| dokumentydb6.mdb;Mode=Share Deny None;
| Extended Properties="";
| *Jet OLEDB:System database=d:system.mdw;*
| Jet OLEDB:Registry Path="";
| Jet OLEDB:Engine Type=5;
| Jet OLEDB:Database Locking Mode=1;
| Jet OLEDB:Global Partial Bulk Ops=2;
| Jet OLEDB:Global Bulk Transactions=1;
| Jet OLEDB:New Database Password="";
| Jet OLEDB:Create System Database=False;
| Jet OLEDB:Encrypt Database=False;
| Jet OLEDB:Don't Copy Locale on Compact=False;
| Jet OLEDB:Compact Without Replica Repair=False;
| Jet OLEDB:SFP=False

A co mi tutaj podałeś i po co ? Tliła się za tym jakaś myśl czy ino
pomroczność jasna ?

|| A tu o owo "gdzie indziej" się rozchodzi ...
|
| hmm
|
| SELECT
| Count(MSysObjects.Id) AS Id
| FROM
| MSysObjects
| WHERE
| MSysObjects.Name Not Like "MSys*" And
| MSysObjects.Name="tWoj" AND
| MSysObjects.Type=1
| WITH OWNERACCESS OPTION;
|
| można też tak.....

Nadal się ośmieszasz. Najwyraźniej wściekłość zaciemnia Ci wzrok ...
Czemu służy warunek :
   Name Not Like "MSys*"
?
  a<0 and a=5
sic!
nadal mam tłumaczyć ?

A jeśli chcę poszukać tabelę "MSysMojaTabela" ? Nie wolno mi jakiejś tak
nazwać ?
Owszem, ja wiem co Ci chodzi po głowie: chcesz wyeliminować tabele
systemowe.
Ale po co ? W przestrzeni tabel i kwerend nazwy sa unikatowe!

No i jeszcze na koniec poczytaj sobie o "WITH OWNERACCESS OPTION" - ze
zrozumieniem!
W stringu przekazywanym jetowi nie ma to najmniejszego sensu! Coś takiego
ma sens JEDYNIE w zapisanych w mdb kwerendach!

Na koniec wyczyszczona postać Twej kwerendy:

SELECT
    Count(*)
FROM
    MSysObjects
WHERE
    Name="tWoj"
AND
    Type=1

(tabele lokalne!)

i nadal powtarzam: nie zawsze będziesz miał prawa do czytania z tabeli
systemowej accessa - o czym w cytowanym wątku.

Przeczytaj wszystkie posty z tego wątku



Temat: mySQL i recordset
On Mar 13, 10:41 am, eme@tlen.pl wrote:
[...]


DAO z MySQL nie ma żadnych problemów. Lepiej zerknąłbym na tabele w
MySQL - jak "się" utworzyły. Typ danych/wartość domyślna.
Pytanie - czy w ogóle jesteś w stanie ręcznie zmieniać coś w tych
tabelach (czyli ręcznie zmodyfikować na otwartej tabeli LP). Mam
dziwne wrażenie że dane zaimportowane do MySQL nie do końca pasują do
typów pól... Nigdy nie korzystałem z opcji "migracji" a po prostu
tworzyłem tabele od zera. I jest kilka kruczków w MySQL których trzeba
się wystrzegać... I jak się coś schrzani do dokładnie jest problem z
edycją wadliwych rekordów.
Hmm - a jaka jest dotychczasowa wartość pól LP dla tych rekordów?

emes- Hide quoted text -

- Show quoted text -


całą bazę i tablice za radą stworzyłem od zera, pole LP jest
SMALLINT(5)
a zresztą - proszę, to moja tablica
CREATE TABLE  `baza`.`tblBook` (
  `ID` int(10) unsigned NOT NULL auto_increment,
  `PostDate` date NOT NULL,
  `LP` smallint(5) default NULL,
  `PostNumber` varchar(20) default NULL,
  `CustID` int(11) NOT NULL,
  `UserField` tinytext,
  `Comments` tinytext,
  PRIMARY KEY  (`ID`),
  KEY `Date` (`PostDate`),
  KEY `CustID` (`CustID`),
  CONSTRAINT `CustID` FOREIGN KEY (`CustID`) REFERENCES `tblCust`
(`ID`) ON DELETE CASCADE ON UPDATE CASCADE,
) ENGINE=InnoDB AUTO_INCREMENT=11 DEFAULT CHARSET=cp1250;

I jeszcze dla podsumowania: Tabela zostaje przez ODBC podłączona do
Accessa, gdzie chcę wykonać procedurkę:

Dim DB As DAO.Database, RS As DAO.Recordset
Dim i As Integer
Dim strSQL As String

Set DB = CurrentDb
strSQL = "Select LP " _
           & "FROM tblBook " _
           & "WHERE PostDate=" & Chr(35) & DataZFormy_jako_yyyy-mm-dd
& Chr(35) & " " _
           & "ORDER BY ID, LP;"

Set RS = DB.OpenRecordset(strSQL, dbOpenDynaset)

If Not RS.EOF And Not RS.BOF Then
   RS.MoveLast
   RS.MoveFirst
End If

With RS
   For i = 1 To RS.RecordCount
      .Edit
      !LP = i
      .Update 'i tu się wykrzacza z komunikatem: "aparat bazy danych
microsoft jet zatrzymał proces, ponieważ inny użytkownik próbuje
jednocześnie zmienić te same dane"
      .MoveNext
   Next
End With

MySQL w wersji 5.0.45, ODBC Connector wer. 3.51.23, próbowałem z
Officem 2003 PL i Eng, Officem 2007 PL i ENG, pod WinXP Pro PL i Eng
Baza w CP1250
Bład pojawia się niezależnie od tego, czy tabela pusta, czy ma już
jakieś wiersze. Wartościami pola LP są 1,2,3 itd.

Pomocy, proszę!

Przeczytaj wszystkie posty z tego wątku



Temat: mySQL i recordset
On 13 Mar, 20:46, Zawias <zaw@gmail.comwrote:


On Mar 13, 10:41 am, eme@tlen.pl wrote:
[...]

| DAO z MySQL nie ma żadnych problemów. Lepiej zerknąłbym na tabele w
| MySQL - jak "się" utworzyły. Typ danych/wartość domyślna.
| Pytanie - czy w ogóle jesteś w stanie ręcznie zmieniać coś w tych
| tabelach (czyli ręcznie zmodyfikować na otwartej tabeli LP). Mam
| dziwne wrażenie że dane zaimportowane do MySQL nie do końca pasują do
| typów pól... Nigdy nie korzystałem z opcji "migracji" a po prostu
| tworzyłem tabele od zera. I jest kilka kruczków w MySQL których trzeba
| się wystrzegać... I jak się coś schrzani do dokładnie jest problem z
| edycją wadliwych rekordów.
| Hmm - a jaka jest dotychczasowa wartość pól LP dla tych rekordów?

| emes- Hide quoted text -

| - Show quoted text -

całą bazę i tablice za radą stworzyłem od zera, pole LP jest
SMALLINT(5)
a zresztą - proszę, to moja tablica
CREATE TABLE  `baza`.`tblBook` (
  `ID` int(10) unsigned NOT NULL auto_increment,
  `PostDate` date NOT NULL,
  `LP` smallint(5) default NULL,
  `PostNumber` varchar(20) default NULL,
  `CustID` int(11) NOT NULL,
  `UserField` tinytext,
  `Comments` tinytext,
  PRIMARY KEY  (`ID`),
  KEY `Date` (`PostDate`),
  KEY `CustID` (`CustID`),
  CONSTRAINT `CustID` FOREIGN KEY (`CustID`) REFERENCES `tblCust`
(`ID`) ON DELETE CASCADE ON UPDATE CASCADE,
) ENGINE=InnoDB AUTO_INCREMENT=11 DEFAULT CHARSET=cp1250;

I jeszcze dla podsumowania: Tabela zostaje przez ODBC podłączona do
Accessa, gdzie chcę wykonać procedurkę:

Dim DB As DAO.Database, RS As DAO.Recordset
Dim i As Integer
Dim strSQL As String

Set DB = CurrentDb
strSQL = "Select LP " _
           & "FROM tblBook " _
           & "WHERE PostDate=" & Chr(35) & DataZFormy_jako_yyyy-mm-dd
& Chr(35) & " " _
           & "ORDER BY ID, LP;"

Set RS = DB.OpenRecordset(strSQL, dbOpenDynaset)

If Not RS.EOF And Not RS.BOF Then
   RS.MoveLast
   RS.MoveFirst
End If

With RS
   For i = 1 To RS.RecordCount
      .Edit
      !LP = i
      .Update 'i tu się wykrzacza z komunikatem: "aparat bazy danych
microsoft jet zatrzymał proces, ponieważ inny użytkownik próbuje
jednocześnie zmienić te same dane"
      .MoveNext
   Next
End With

MySQL w wersji 5.0.45, ODBC Connector wer. 3.51.23, próbowałem z
Officem 2003 PL i Eng, Officem 2007 PL i ENG, pod WinXP Pro PL i Eng
Baza w CP1250
Bład pojawia się niezależnie od tego, czy tabela pusta, czy ma już
jakieś wiersze. Wartościami pola LP są 1,2,3 itd.

Pomocy, proszę!

--
pozdrawiam
Zawias


Nie napisałeś czy jeśli są dane to tabela jest edytowalna... Pewnie
tak skoro nic nie napisałeś.
Swoją drogą czeski film. Nie wiem. Ale jakoś się przyzwyczaiłem do
tego że nie używam formatów pól typu SMALLINT, TINYTEXT. Jakoś (może
niekoniecznie akurat z tymi) miałem problemy z niektórymi formatami -
bo access je różnie obsługuje.
Spróbuj jeszcze w adminie MySQL ustawić default dla ID - wartość NULL.
Czyli pole ma mieć jako default Null i typ pola Not Null...
No i na końcu spróbować jakiegoś prostszego SQLa którym wybierasz
rekordy - jak już inne sposoby wysiądą.
A czym tworzysz tabele? MySQL Administratorem?

emes

Przeczytaj wszystkie posty z tego wątku



Temat: Optymalizacja wydajności tabel połączonych w bazie danych programu Microsoft Access
Tomasz Sadecki napisał(a):


Od kiedy używam tabel połączonych i zauważyłem znaczny spadek wydajności. W
Helpie znalazłem opis pt.
"Optymalizacja wydajności tabel połączonych w bazie danych programu
Microsoft Access", a w nim następującą radę:

"Wydajność pracy z główną bazą danych, tabelami i formularzami można
znacznie zwiększyć, jeśli połączone bazy danych będą pozostawały przez cały
czas pracy otwarte. W tym celu należy utworzyć pustą tabelę w połączonej
bazie danych oraz utworzyć połączenie z tą tabelą w głównej bazie danych.
Następnie do otwarcia tabeli połączonej należy użyć metody OpenRecordset. W
ten sposób aparat bazy danych Microsoft Jet nie będzie wielokrotnie otwierał
i zamykał połączonej bazy danych, a także nie będzie niepotrzebnie tworzył i
usuwał związanego z bazą danych pliku .ldb."

Potrafię korzystać z metody OpenRecordset do otwierania tabeli, ale nie wiem
jak zmodyfikować wszystkie formularze i kwerendy korzystające z tabeli
połączonej o nazwie np. Tabela1. W szczególności proszę o wyjaśnienie
zwrotu:
"W tym celu należy utworzyć pustą tabelę w połączonej bazie danych oraz
utworzyć połączenie z tą tabelą w głównej bazie danych."


Ja rozumiem to tak: masz bazy: aplikacja.mdb (formularze, raporty etc.)
oraz dane.mdb (tylko tabele). Klasyczny podział "fronton/zaplecze". W
bazie dane.mdb tworzysz byle jaką tabelę i załączasz ją z pliku
aplikacja.mdb (tak samo jak zapewne i pozostałe tabele znajdujace się w
dane.mdb).

 Nastepnie w aplikacja.mdb (np. przy jej uruchamianiu) otwierasz np. w
jakiejś globalnej procedurze Recordset, oparty na tejże dodatkowej
załączonej tabeli; tak jak opisali w helpie.  Recordset pozostawiasz
otwarty aż do końca działania aplikacji. Nawet gdy w aplikacji
pozamykasz inne Recordsety, tabele, zapytania, formularze, raporty,
itd.  - utrzymywane będzie "stałe połączenie" aplikacja.mdb-dane.mdb;
baza dane.mdb bedzie cały czas otwarta.
 Wydaje mi sie ze w prostszej wersji podobny efekt można uzyskać,
otwierając gdzieś przy starcie aplikacji formularz, oparty na tej
dodatkowej tabeli i uczynić go ukrytym.

 O czym ewentualnie trzeba bedzie pamiętać: jeżeli "z poziomu"
aplikacja.mdb będzie wywoływana defragmentacja lub naprawa bazy dane.mdb
(co jest możliwe, pod warunkiem, że nie bedzie otwarta żadna tabela
"pochodząca" z dane.mdb ; w sieci także przez innych użytkowników) -
przed wykonaniem tych czynności należy zamknąć dodatkowy Recordset.

A tak w ogóle nie wiedziałem o tym "tipsie", chociaż teraz wydaje mi się
logiczny. Coż, człowiek uczy sie przez całe życie (i tak ma być ;-)
Ciekaw jestem jednak, czy wzrost wydajności jest naprawdę aż tak
zauważalny.
Thnx.

Pozdrawiam -
        Stanley
Access to Access:
http://web.pertus.com.pl/~stanley

Przeczytaj wszystkie posty z tego wątku



Temat: Access + VB .NET - jak ????

mr@poczta.onet.pl wrote:


mpopWitam serdecznie
mpopJak polaczyc sie z baza danych Accessa za pomoca Visual Basic .Net.
mpopPrzypuscmy ze mamy taka baze

mpop| Id | Nazwisko | Imię | Ulica|
mpop   1     Nowak    Adam   Jasna
mpop   2     Kita     Radek  Ciemna

mpopChce otrzymac wynik to TextBox1.Text, ktory to
mpopzawieralby nazwisko Kita za pomoca SQL'a to by
mpopbylo tak "Select nazwisko from tabela WHERE Id='2'"
mpopJak podlaczyc sie do bazy ?
mpopJak wykonac instrukcje SQL'a ?

mpopJak tego dokonac w najprostszy sposob ??
mpopProsze o pomoc w postaci przykladu jesli to mozliwe.

Po pierwsze:
ZAINSTALUJ Framework.NET SDK (Software Development Kit), ilość
zawartych przykładów jest PORAŻAJĄCA.

Po kolejne :-) :
Jest kilka metod:
1. Za pomocą OleDb - gdy nie korzystasz z MS SQL Server

Imports System
Imports System.Data
Imports System.Data.OleDb
Imports System.Data.SQLClient  'to jest potrzebne tylko gdy łączysz się do
serwera SQL

Namespace COSTAM

Public Class MyUser
public function GetDetails(sUserID as integer) as string

         dim strConn as string = "Provider=Microsoft.Jet.OLEDB.4.0;
         Data Source=c:access_daneUserid.mdb" 'dla pliku MDB
              'lub
         strConn = "Provider=SQLOLEDB;Database=MojaBaza;Server=127.0.0.1;User id=username;password=mojetajnehaslo"
         ' gdy korzystasz z System.Data.SqlClient, to niepotrzebny
         jest Provider w ciągu połączenia

         dim Conn as new OleDbConnection(strConn)        
         dim objCmd as OleDbCommand = new OleDbCommand()
         dim wynik as string

             Conn.Open
            objCmd.Connection = Conn
            objCmd.CommandText = "Select nazwisko from tabela WHERE
            Id=" & sUserID
            objCmd.CommandType = CommandType.text

         dim objReader as OleDbDataReader

         try
            objCmd.Connection.Open()
            objReader = objCmd.ExecuteReader
         catch ex as OleDbException
            throw ex
         end try

         while objReader.Read()
            wynik = objReader.GetString(0)
         end while
         objReader.Close
         Conn.Close     'zamykamy polaczenie

         return wynik
end function    

End Class

END NAMESPACE

Aha, to zadziała odpowiednio, gdy dla jednego ID jest tylko JEDNO
nazwisko.

Jak chcesz skorzystać z (klasy?) SqlClient, to zobacz do helpa, jest
MNÓSTWO przykładów.

Pozdrawiam
Jacek

Przeczytaj wszystkie posty z tego wątku



Temat: tabela przylaczona z VB


Witam,

No dobrze, a jezeli tabela ma byc polaczona ze zrodla ODBC to gdzie
wstawic
polaczenie (bez wywolywania okna polaczen odbc)??

Pozdrawiam

tetros


(CUT)

Przykład wycięty z helpa :

Sub ConnectionObjectX()

    Dim wrkJet As Workspace
    Dim dbsNorthwind As Database
    Dim wrkODBC As Workspace
    Dim conWyd As Connection
    Dim conWyd2 As Connection
    Dim conPętla As Connection
    Dim prpPętla As Property

    ' Otwórz obiekt Microsoft Jet Database.
    Set wrkJet = CreateWorkspace("NowyObszarJet", _
        "admin", "", dbUseJet)
    Set dbsNorthwind = _
        wrkJet.OpenDatabase("C:Program FilesMicrosoft
OfficeOfficePrzykldyNorthwind.mdb")

    ' Utwórz obiekt ODBCDirect Workspace i otwórz

' obiekty Connection.
    Set wrkODBC = CreateWorkspace("NowyObszarODBC", _
        "admin", "", dbUseODBC)
    Set conWyd = _
        wrkODBC.OpenConnection("Połączenie1", , , _
        "ODBC;DATABASE=wyd;UID=sa;PWD=;DSN=Wydawcy")
    Set conWyd2 = _
        wrkODBC.OpenConnection("Połączenie2", , _
        True, _
        "ODBC;DATABASE=wyd;UID=sa;PWD=;DSN=Wydawcy")

    Debug.Print "Właściwości obiektu Database:"

    With dbsNorthwind
        ' Wylicz elementy kolekcji Properties obiektu
        ' Database.

For Each prpPętla In .Properties
            On Error Resume Next
            Debug.Print "    " & prpPętla.Name & _
            " = " & prpPętla.Value
            On Error GoTo 0
        Next prpPętla
    End With

    ' Wylicz elementy kolekcji Connections.
    For Each conPętla In wrkODBC.Connections
        Debug.Print "Właściwości obiektu Connection " _
            ; conPętla.Name & ":"

        With conPętla
            ' Drukuj wartości właściwości, wywołując
            ' każdy obiekt Property. Obiekt Connection

' nie posiada kolekcji Properties.
            Debug.Print "    Connect = " & .Connect
            ' Właściwość zwraca w rzeczywistości obiekt
            ' Database.
            Debug.Print "    Database[.Name] = " & _
                .Database.Name
            Debug.Print "    Name = " & .Name
            Debug.Print "    QueryTimeout = " & _
                .QueryTimeout
            Debug.Print "    RecordsAffected = " & _
                .RecordsAffected
            Debug.Print "    StillExecuting = " & _
                .StillExecuting

Debug.Print "    Transactions = " & _
                .Transactions
            Debug.Print "    Updatable = " & .Updatable
        End With

    Next conPętla

    dbsNorthwind.Close
    conWyd.Close
    conWyd2.Close
    wrkJet.Close
    wrkODBC.Close

End Sub

Przeczytaj wszystkie posty z tego wątku



Temat: Czy jest mozliwosc usprawnic ADP.
Jestem z dala od komputera, wiec rzuce tylko hasla:
- mnie nie dziala
   set me.recordset = rs
jesli kursor nie jest ustawiony po stronie klienta (ale to zdaje sie domysla wartosc)

- ustawiasz:
  me.kombi0.rowsource = ...
Blad! Masz ustawic recordset, zupelnie tak samo jak w przypadku formularza!
RowSource jest wlasciwoscia tekstowa, Recordset obiektowa ;-)
-----Original Message-----
    From: "gazeta"<as@gazeta.pl
    Sent: 08-01-16 16:30:06
    To: "pl-comp-bazy-danych-msacc@newsgate.pl"<pl-comp-bazy-danych-msacc@newsgate.pl
    Subject: Re: Czy jest mozliwosc usprawnic ADP.

    Private Sub Form_Open(Cancel As Integer)
       Dim cn As ADODB.Connection
       Dim rs As ADODB.Recordset

       'Create a new ADO Connection object
       Set cn = New ADODB.Connection

       With cn
          .Provider = "Microsoft.Access.OLEDB.10.0"
          .Properties("Data Provider").Value = "Microsoft.Jet.OLEDB.4.0"
          .Properties("Data Source").Value = _
              "D:AsFabrykaAdp est.mdb"
          .Open
       End With

       'Create an instance of the ADO Recordset class, and
       'set its properties
       Set rs = New ADODB.Recordset
       With rs
          Set .ActiveConnection = cn
          .Source = "SELECT * FROM table1"
          .LockType = adLockOptimistic
          .CursorType = adOpenKeyset
          .Open
       End With

       'Set the form's Recordset property to the ADO recordset
       Set Me.Recordset = rs
       Set rs = Nothing
       Set cn = Nothing

       Set Me.Combo.RowSource = rs                    '#blad cutuje: inwalid use
    of property
       Set rs = Nothing
       Set cn = Nothing

    End Sub

    -----------------------------------------------------
    Dziala jezeli chodzi o "zasilenie formularza, ale przy probie popiecia do
    wlasciwosci zrodlo wierszy wychodzi blad"
    VVlodek

[Message truncated. Tap Edit-Mark for Download to get remaining portion.]

Przeczytaj wszystkie posty z tego wątku
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • erfly06132.opx.pl



  • Strona 4 z 4 • Zostało wyszukane 216 wypowiedzi • 1, 2, 3, 4

    © 2009 Najlepszy miesiąc kawalerski w Polsce !!! - Ceske - Sjezdovky .cz. Design downloaded from free website templates