Edelstein29
-
Gesamte Inhalte
3 -
Benutzer seit
-
Letzter Besuch
Inhaltstyp
Profile
Forum
Downloads
Kalender
Blogs
Shop
Beiträge von Edelstein29
-
-
hi
hatte ein ähnliches problem bei der ODBC intallation, hatte die falsche Oracle Client Version. Unten siehst du die richtige Version und meine Notizen.
Oracle Instant Client installieren
---------------------------------
- Erstellen des Verzeichnisses
C:\Oracle (oder Name nach Bedarf)
- Inhalt aus Archiv instantclient-basic-win32-11.1.0.7.0.zip
nach C:\Oracle extrahieren (wird in Verzeichnis instantclient_11_1 kopiert)
- Inhalt aus Archiv instantclient-sqlplus-win32-11.1.0.7.0.zip
nach C:\Oracle extrahieren (wird in Verzeichnis instantclient_11_1 kopiert)
- Inhalt aus Archiv instantclient-odbc-win32-11.1.0.7.0.zip
nach C:\Oracle extrahieren (wird in Verzeichnis instantclient_11_1 kopiert)
- Folgende System-Umgebungsvariablen unter Windows erstellen
(Control Panel>System>Advaced Tab>Environment Variables)
tns_admin = C:\Oracle\instantclient_10_2
NLS_LANG = AMERICAN_AMERICA.WE8ISO8859P1
- C:\Oracle\instantclient_11_1 in die PATH Umgebungsvariable von Windows hinzufügen
- Für die Verwendung von ODBC folgende Datei ausgeführt werden:
C:\Oracle\instantclient_11_1\odbc_install.exe
- tnsnames.ora erstellen oder vom Server kopieren
MPSInformServer =
(DESCRIPTION=
(ADDRESS_LIST=
(ADDRESS=
(PROTOCOL=TCP)
(Host=10.195.10.35)
(Port=1521)
)
)
(CONNECT_DATA=
(SERVICE_NAME=MPSI)
)
)
-
Hallo Forenleser,
wie kann ich eine Variable Spaltenabfrage machen z.B.
select vosvjs + @Variable from vosv
in der Tabelle vosv hat es für jeden Wochentag eine Spalte(ja/Nein)
vosvjsmo
vosvjsdi
vosvjsmi
usw
die Variable beinhaltet den morgigen Tag, dies habe ich bereits.
declare @columnname char(2)
declare @wtag int
set @wtag = CONVERT (nvarchar(10), datepart(dw,GETDATE() + 1), 120)
set @columnname =
case @wtag
when 1 then 'so'
when 2 then 'mo'
when 3 then 'di'
when 4 then 'mi'
when 5 then 'do'
when 6 then 'fr'
when 7 then 'sa'
end
leider geht der select nicht
select vosvjs + @Variable from vosv
dieser nimmt den Wert aus der Spalte vosvjs, die es auch gibt und ergänzt den Wert mit der Variable.
Resultat ist --> no column name
0 mi
wer kann weiterhelfen?
sql 2005 - variable spalte
in Datenbanken
Geschrieben
jo ... ms sql2005
diese variante hab ich befürchtet. das ganze in einen string setzen und exec ... leider ist der select nur ein ganz kleiner auszug des ganzen
hier der ganze sql
SELECT UPPER(REPLACE(LEFT(RTRIM(dbo.VOZA.vozabez), 5), ' ', '')) AS VC_NR, RTRIM(dbo.ABVO.ABVOBEZ) AS VC_NAME,
CONVERT(nvarchar(10), GETDATE(), 112) AS FILE_DATE, RTRIM(dbo.ABO01VRX.AVREXTNR) AS BEZIRK, RTRIM(dbo.ABO01VRX.AVRORT1)
AS ORT_BEZIRK, RTRIM(dbo.ABO01VRX.avrplz1) + RTRIM(dbo.ABO01VRX.avrplzzz1) AS PLZ_BEZIRK, dbo.VOAD.voadadnr AS GP_NR,
RTRIM(dbo.VOAD.voadpersnr) AS PERS_NR, RTRIM(dbo.VOAD.voadanrede) AS ANREDE, RTRIM(dbo.VOAD.voadvorname) AS VORNAME,
RTRIM(dbo.VOAD.voadname) AS NAME, DATEPART(day, dbo.VOAD.voadgebdat) AS GEB_DAT_TT, DATEPART(month, dbo.VOAD.voadgebdat)
AS GEB_DAT_MM, DATEPART(year, dbo.VOAD.voadgebdat) AS GEB_DAT_JJJJ, CONVERT(nvarchar(10), dbo.VOAD.voadgebdat, 104) AS GEB_DATUM,
RTRIM(dbo.VOAD.voadtel1) AS [TEL_NR P], RTRIM(dbo.VOAD.voadtel2) AS [TEL_NR G], RTRIM(dbo.VOAD.voadtel3) AS [TEL_NR N],
RTRIM(dbo.VOAD.voadstrasse) + ' ' + RTRIM(dbo.VOAD.voadhausnr) AS STRASSE, RTRIM(dbo.VOAD.voadplz) AS PLZ, RTRIM(dbo.VOAD.voadort)
AS ORT, 'CH' AS Land, RTRIM(dbo.VOAD.voademail1) AS [E-Mail], RTRIM(dbo.VOAD.voademail2) AS [E-Mail2],
dbo.ABO01VRX.AVRINTNR AS VRX_NR
FROM dbo.ABO01VRX INNER JOIN
dbo.ABVO ON dbo.ABO01VRX.avrvonr = dbo.ABVO.ABVOVONR INNER JOIN
dbo.VOZA ON dbo.ABO01VRX.avrzanr = dbo.VOZA.vozazanr INNER JOIN
dbo.VOSV ON dbo.ABO01VRX.AVRINTNR = dbo.VOSV.vosvvrnr INNER JOIN
dbo.VOAD ON dbo.VOSV.vosvadnr = dbo.VOAD.voadadnr INNER JOIN
dbo.View_ASK_Routen_StammJSE ON dbo.ABO01VRX.AVRINTNR = dbo.View_ASK_Routen_StammJSE.AVRINTNR
WHERE (dbo.VOAD.deleted = '0') AND (dbo.VOSV.deleted = '0') AND (CONVERT(nvarchar(10), dbo.VOSV.vosvvon, 120) <= CONVERT(nvarchar(10), GETDATE()
+ 1, 120)) AND (CONVERT(nvarchar(10), dbo.VOSV.vosvbis, 120) >= CONVERT(nvarchar(10), GETDATE() + 1, 120)) AND (dbo.VOSV.vosvjs = '1') AND
(dbo.VOSV.vosvjsmo = '1') OR
(dbo.VOAD.deleted = '0') AND (dbo.VOSV.deleted = '0') AND (CONVERT(nvarchar(10), dbo.VOSV.vosvvon, 120) <= CONVERT(nvarchar(10), GETDATE() + 1,
120)) AND (CONVERT(nvarchar(10), dbo.VOSV.vosvbis, 120) IS NULL) AND (dbo.VOSV.vosvjs = '1') AND (dbo.VOSV.vosvjsmo = '1')
ORDER BY VC_NR, BEZIRK
aber ich komme wohl nicht drumherum ....
nun hänge ich aber schon wieder, und zwar:
SELECT UPPER(REPLACE(LEFT(RTRIM(dbo.VOZA.vozabez), 5), ' ', '')) AS VC_NR
als string sieht das ja dann so aus:
set @sql = 'select UPPER(REPLACE(LEFT(RTRIM(dbo.VOZA.vozabez), 5), ' + ....
wie bekomme ich die hochkommas (' ', '') in den string ... da gibts doch so ein ganz spezielles vorzeichen welches diese als text definiert.
danke schonmal für den ersten tip ...