Avatar billede jklausen Juniormester
27. maj 2010 - 09:28 Der er 12 kommentarer og
1 løsning

Trække data ind fra andre Databaser

Jeg opretter en ny Access database hvor jeg skal trække data fra en SQL database samt selv oprette nogle kolonner hvor jeg har skriveadgang til. Jeg har ikke skriverettigheder i SQL databasen.
Hvordan får jeg lige gjort det? Jeg kan godt sammenkæde tabeller, men så får jeg ikke mulighed for at skrive i tabellen.
Avatar billede mugs Novice
27. maj 2010 - 10:05 #1
I Menuen Filer > Hent eksterne data, kan du hente fra andre filer til en temp tabel. Herefter kan du sende data ind i dine respektive tabeller hvor du har skriverettigheder.

Skal du gøre det igen og igen kan det automatiseres.
Avatar billede jklausen Juniormester
27. maj 2010 - 14:35 #2
hvordan sender jeg data videre ind i en anden tabel?
Avatar billede jklausen Juniormester
27. maj 2010 - 14:41 #3
og ja det skal opdateres løbende - hvordan automatiseres det?
Avatar billede jklausen Juniormester
27. maj 2010 - 15:02 #4
Det må være noget med:

INSERT INTO table1
hele kolonne 1,3,5 og 8 i tabel2

Hvordan får jeg lige lavet denne korrekt?
Avatar billede egyl Nybegynder
27. maj 2010 - 17:28 #5
Selv har jeg lavet en lokat tabel med de felter jeg ønsker at bruge fra SQL inkl mine egne ønsket felter
hver x je gså starter basen køre der en tilføjses FS der køre nye data over i lokal tabellen
Nb! nøgle felt i lok tabel is null
Avatar billede mugs Novice
27. maj 2010 - 17:36 #6
Brug querybuilderen.
Avatar billede jklausen Juniormester
28. maj 2010 - 11:48 #7
Jeg kan manuelt udføre hvad der skal til:

1. link til PUB_medarb (en SQL database som vi ikke har skriverettigheder til)
2. exporter PUB_medarb tabellen til en txt-fil, PUB_medarb.txt
3. importer fra txt fil til access tabel, tabel1
4. slet de kolonner du ikke skal bruge,  ALTER TABLE tabel1 DROP  COLUMN [colonne1,colonne2,etc]
5. opret nye kolonner, ALTER TABLE tabel1 ADD nyKolonne1 TEXT(30),nyKolonne2 TEXT(30);
6. Databasen er nu som den ønskes, nemlig kombination af 2 databaser og med skriverettigheder
7. Exporter denne tabel til text-fil.

Det virker fint, men hvordan får jeg dette til at køre een gang i døgnet automatisk?
Avatar billede mugs Novice
28. maj 2010 - 12:30 #8
Du kan kun få den til at køre automatisk hvis Access er startet.

Ellers kan du i Windows opgavestyring (hedder det vist), lave en handling der åbner din db og gennemløber koden.
Avatar billede jklausen Juniormester
28. maj 2010 - 12:51 #9
ja mugs, og hvordan ser indholdet af den scheduled task så ud?
Avatar billede mugs Novice
28. maj 2010 - 14:16 #10
I Access 2003 ligger der en guide der hjælper dig. Jeg har ikke nogen erfaring med det, og har aldrig brugt det. Men det er den enne af 2 muligheder som jeg tidligere skitserede.
Avatar billede jklausen Juniormester
12. juni 2010 - 12:45 #11
Så fik jeg den lavet så den virker i SQLServer2005
Nogle bud på tilsvarende i ACCESS?


set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
go


-- =============================================
-- Author:        <Author,,Name>
-- Create date: <Create Date,,>
-- Description:    <Description,,>
-- =============================================
ALTER PROCEDURE [dbo].[SP_OPDATER]
AS
BEGIN
    DECLARE      @bcpCommand varchar(2000)
    -- SET NOCOUNT ON added to prevent extra result sets from
    -- interfering with SELECT statements.
    SET NOCOUNT ON;

    --opdater eksisterende personer
    Update CF
    Set cf.first_name = emp.first_name,
        cf.surname = emp.surname,
        cf.dept_id = emp.dept_id
    From Cardfive cf
    inner join ( select emp_no, first_name, surname, dept_id
        from LINKEDSERVER.database2..employee )  emp
    on cf.emp_no = emp.emp_no


    -- Indsæt nye personer
    Insert into minTabel ( id, emp_no, first_name, surname, dept_id)
    select emp_no, emp_no, first_name, surname, dept_id from LINKEDSERVER.database2..employee
    where not exists ( select emp_no from minTabel)

    -- Opret fil
    SET @bcpCommand =     'bcp "Select * from minDatabase..minTabel" queryout  "D:\udskrift.txt" -c -T -N'
    EXEC master..xp_cmdshell @bcpCommand

END
Avatar billede jklausen Juniormester
12. juni 2010 - 12:51 #12
rettelse: Cardfive skal rettes til minTabel.
Avatar billede jklausen Juniormester
18. juni 2010 - 22:33 #13
ingen svar - jeg lukker....
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester