Jag ska in och göra lite extrafunktioner i ett redan befintligt system. Klarar du av att ansluta mot en ensam tabell via odbc? Jo att ansluta till en enskild tabell och stoppa in data i ett dataset är inget problem.Joina foxpro-tabeller som finns i olika mappar
Databasen består där av Foxpro (Okänd version) men alla tabeller ligger i separata filer (tabell.dbf resp tabell.cdx) dessutom så ligger inte alla tabeller/filer i samma mappar på servern. Tex "dbf/mapp1/tabell1.dbf" resp "dbf/mapp2/tabell2.dbf"
Hur bär jag mig åt för att joina dessa 2 tabeller?
Jag har provat med "[mapp1].[tabell1] men får felmeddelanden om ogiltiga tecken.
Jag avvänder följande connectionsträng:
con.ConnectionString = "Provider=vfpoledb.1;Data Source=c:\\projekt\\dbf\\mapp1;Collating
Sequence=general;";//Character Encoding=Windows-1252;";
Jag anger alltså bara i vilken mapp tabellen ligger.
Är det rätt connection? Ska man bete sig på något annat sätt?
Det är ingen tidskritisk tjänst utan den ska utföras några gånger per dag av en person.
Utvecklingen sker i C# .NET2
Alla tips är välkomna, är själv väldigt grön på fildatabaser överlag.
/P-E
Sv: Joina foxpro-tabeller som finns i olika mappar
Det stämmer att alla tabeller är i varsin fil, det är så dessa databaser fungerar. I din connectionsträng anger du bara sökvägen där alla dessa filer ligger. Sen får du fnula med sql-satser lite.
I dbase får man skriva sqlsatsen lite knäppt också med .net och odbc, ex:
select [FÄLT1] from [KALLE.DBF] where [FÄLT2] = 'FIRST'
Jag har märkt att fält måste inneslutas med [] och även vara stora bokstäver ibland. När det gäller join så har jag inte testat det än, men chansen att du skriver ungefär samma som sql borde vara åt rätt håll, dvs
select [FÄLT1] from [KALLE.DBF], [OLLE.DBF]
where [KALLE].[USERID] = [OLLE].[USERID]
and [FÄLT2] = 'FIRST'Sv:Joina foxpro-tabeller som finns i olika mappar
Mitt problem är att 2 av tabellerna som jag vill joina ligger i 2 olika mappar, inte i samma och det fungerar inte att ange mappen i en nivå över och sen ange typ [mapp1].[tabbell1] i from.
Det är den delen jag främst behöver lösa.
/Per-Erik