Strona: [  << <   1   > >>  ]  z  1     
Autor Temat: Tabele acces
anonim




Typ: Nie zarejestrowany
Tabele acces

Mam problem, chciałbym zrobić coś takiego żeby:

Procedura tworzyła tabele w bazie danych na podstawie innych tabel,to znaczy mam w jednej tabeli np imie, nazwisko, w  drugiej date urodzenia i wiek, a chce zeby w tej nowej czyli 3 tabeli było imie i data urodzenia, czyli procedura musi tworzyc tabele i wstawiac do niej dane wyszukane z innych tabel.
za odpowiedz z góry dziękuje

19-05-2005 22:15
  
karolinavb




Typ: neutral
Postów: 468
Zarejestrowany: Jan 2003

DAO

Okno bazy danych:
- Kwerendy
- Nowy
- Widok Projektu
- Dodaj te tabele
- Wybierz pola
- Typ kwerendy: tworząca tabele
- nazwij sobie np "MojaKwrenda"
i w kodzie:


Sub tworzTabele()
Dim db As DAO.Database
Dim oKW As DAO.QueryDef
Set db = CurrentDb
Set oKW = db.QueryDefs("MojaKwerenda" )
oKW.Execute
Set oKW = Nothing
Set db = Nothing
End Sub

lub można sobie tą kwerendę skopiować:

Sub TworzTabele2()
Dim db As DAO.Database
Dim sSql As String
sSql = "SELECT tblSysErrorLog.Identyfikator, tblSysErrorLog.NazwaFunkcji, tblSysErrorLog1.Numerbledu, tblSysErrorLog1.CzasWystapienia INTO NowaTabela " & _
    " FROM tblSysErrorLog INNER JOIN tblSysErrorLog1 ON tblSysErrorLog.Identyfikator=tblSysErrorLog1.Identyfikator;"
Set db = CurrentDb
db.Execute sSql
Set db = Nothing
End Sub

ADO ( w środwowisku MS Access np), ten sam string SQL

Sub TworztabeleADO()
Dim oCn As ADODB.Connection
Set oCn = CurrentProject.Connection
Dim sSql As String
sSql = "SELECT tblSysErrorLog.Identyfikator, tblSysErrorLog.NazwaFunkcji, tblSysErrorLog1.Numerbledu, tblSysErrorLog1.CzasWystapienia INTO NowaTabela1 " & _
    " FROM tblSysErrorLog INNER JOIN tblSysErrorLog1 ON tblSysErrorLog.Identyfikator=tblSysErrorLog1.Identyfikator;"
oCn.Execute sSql
.......... i co tam ma być....

End Sub

Tabele składowe mają tu podobne nazwy tblSysErrorLog i tblSysErrorLog1 lecz jest już późno na inny przykład.

Dobranoc

[Post edytowany dnia 20-05-2005 02:57 przez karolinavb]


_____________________________________________
Karolina

20-05-2005 02:46
Pokaż profil karolinavb  Wyślij email do karolinavb   
siwa1911




Typ: neutral
Postów: 5
Zarejestrowany: Apr 2005
:)

Ten kod tworzy tabele, oraz jej pola o podanych nazwach, moze w czymś Ci pomorze

Sub CreateTable()
'Tworzy tabelę i jej pola w bieżącej bazie danych'


Dim cat As ADOX.Catalog
Dim tbl As ADOX.Table

On Error GoTo Proc_Err

Set cat = New ADOX.Catalog
cat.ActiveConnection = CurrentProject.Connection

Set tbl = New ADOX.Table
' Tworzy tabelę'
With tbl
  .Name = "Tabela"
  .Columns.Append "ID", adInteger
  .Columns.Append "Imie", adWChar, 25#
  .Columns.Append "Drugie_imie", adWChar, 2
  .Columns.Append "Nazwisko", adWChar, 50
End With

cat.Tables.Append tbl
MsgBox "Tabela została utworzona", vbInformation

Proc_Exit:
  Exit Sub
Proc_Err:
  MsgBox Err.Description
  Resume Proc_Exit
End Sub

20-05-2005 10:35
Pokaż profil siwa1911  Wyślij email do siwa1911   
Wszystkich odpowiedzi: 2 :: Maxymalnie na stronę: 20
Strona: [  << <   1   > >>  ]  z  1