Administrace Oracle

Odeslat odpověď

Smajlíci
:D :) :( :o :shock: :? 8) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen:

BBCode je zapnutý
[img] je zapnutý
[flash] je vypnutý
[url] je zapnuté
Smajlíci jsou zapnutí

Přehled tématu
   

Rozšířit náhled Přehled tématu: Administrace Oracle

Re: Administrace Oracle

od MarPol » 15. 1. 2009 11:30

Plati to, co ma na strankach.

Re: Administrace Oracle

od Návštěvník » 12. 1. 2009 16:00

Zase ozivime jedno starsi tema...
Byl jste nekdo v posledni dobe na hodine? Nerikal nejaky informace o projektech? Pripadne jestli nebude na posledni hodine neco chtit?

od rastik » 4. 12. 2006 21:29

Presne to, co som poslal mi prejde:
C:\Temp\proc>proc main.pc

Pro*C/C++: Release 9.2.0.1.0 - Production on Mon Dec 4 20:58:16 2006

Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.

System default option values taken from: c:\oracle\precomp\admin\pcscfg.cfg
C:\Temp\proc>c:\ora10g\bin\proc main.pc

Pro*C/C++: Release 10.1.0.4.2 - Production on Mon Dec 4 20:59:33 2006

Copyright (c) 1982, 2005, Oracle. All rights reserved.

System default option values taken from: C:\ora10g\precomp\admin\pcscfg.cfg
Ziadne uvodzovky, len ciste: EXEC SQL INCLUDE konstanty.h; (nezabudni na ; na konci).

od Eubie » 4. 12. 2006 20:48

To už jsem všechno vyzkoušel eště před postnutím toho dotazu. Bohuižel ani kód

Kód: Vybrat vše

#include <stdio.h>
#include <sqlca.h>

EXEC SQL BEGIN DECLARE SECTION;
	EXEC SQL INCLUDE 'konstanty';    /*   odkaz   */
	char szTest_Array[VELIKOST_POLI];
EXEC SQL END DECLARE SECTION;

int main(void){
	EXEC SQL CONNECT :szTest_Array;
	
	return 0;
	};
neprojde. Na radku kde je /* odkaz */ jsem zkousel konstanty.h, "konstanty.h", 'konstanty.h', konstanty, "konstanty", 'konstanty' a ani jedno z toho nebylo to prave orechove. Zejtra se zeptam Kopeckyho na cviku. Diky!

od Eubie » 4. 12. 2006 20:26

To už jsem všechno vyzkoušel eště před postnutím toho dotazu. Bohuižel ani kód

Kód: Vybrat vše

#include <stdio.h>
#include <sqlca.h>

EXEC SQL BEGIN DECLARE SECTION;
	EXEC SQL INCLUDE 'konstanty';    /*   odkaz   */
	char szTest_Array[VELIKOST_POLI];
EXEC SQL END DECLARE SECTION;

int main(void){
	EXEC SQL CONNECT :szTest_Array;
	
	return 0;
	};
neprojde. Na radku kde je /* odkaz */ jsem zkousel konstanty.h, "konstanty.h", 'konstanty.h', konstanty, "konstanty", 'konstanty' a ani jedno z toho nebylo to prave orechove. Zejtra se zeptam Kopeckyho na cviku. Diky!

od rastik » 4. 12. 2006 19:47

Pokial ma Pro*C spracovavat include, musi to byt: EXEC SQL INCLUDE. Dalej, pokial chces hodnotu z #define pouzit v DECLARE SECTION, musi v nej byt tiez.

Kód: Vybrat vše

konstanty.h:
#ifndef __CONSTS__ 
#define __CONSTS__ 
EXEC SQL BEGIN DECLARE SECTION; 
#define VELIKOST_POLI 50
EXEC SQL END DECLARE SECTION; 
#endif

main.pc:
#include <stdio.h> 
#include <sqlca.h> 
EXEC SQL INCLUDE konstanty.h;

EXEC SQL BEGIN DECLARE SECTION; 
   char szTest_Array[ VELIKOST_POLI ]; 
EXEC SQL END DECLARE SECTION; 

int main(void){ 
   EXEC SQL CONNECT :szTest_Array; 
   return 0; 
};

od Eubie » 3. 12. 2006 13:07

Díky za odkaz, nicméně asi stále někde dělám chybu. Udělal sem krátkej příkládek, n akterým to nefunguje:

Kód: Vybrat vše

KONSTANTY.h
#ifndef __CONSTS__
#define __CONSTS__
#define VELIKOST_POLI 50
#endif

MAIN.PC
#include <stdio.h>
#include <sqlca.h>
#include "konstanty.h"

EXEC SQL BEGIN DECLARE SECTION;
	char szTest_Array[ VELIKOST_POLI ];
EXEC SQL END DECLARE SECTION;

int main(void){
	EXEC SQL CONNECT :szTest_Array;
	return 0;
	};
Tak jsem z toho jelen. Hláška ProCu je

Kód: Vybrat vše

SÚmantickß chyba na °ßdku 6, sloupec 21, soubor main.pc:
        char szTest_Array[ VELIKOST_POLI ];
....................1
PCC-S-02322, byl nalezen nedefinovanř identifikßtor
( cili nezna VELIKOST_POLI )

od rastik » 3. 12. 2006 11:49

Podla http://download-uk.oracle.com/docs/cd/B ... tm#i431189 by mali obe varianty fungovat.

od Eubie » 3. 12. 2006 11:29

Ahoj,

mám další problém: mám soubory A.h, B.h a C.pc . Soubory A.h i B.h inkludují nějaký soubor konstanty.h obsahující definy. Soubor C.pc potřebuje inkludovat jak A.h, tak B.h. Pokud konstanty.h obalím ifndef __KONSTANTY define ... výčet konstant ... tak mi ProC zařve ( on dle mě ještě neví, co má s ifndef dělat ). Tak jsem ifndefy odstranil, nicméně takhle se mi zase do C.pc nadefinují všechny konstanty 2x a kompilátor mě seřve. Pak sem si zkoušel hrát s oraclím EXEC ORACLE IFNDEF; ... ale to se chová divně, například si do souboru Konstanty.h po nainkludování do C.cpp na nějaké místo vloží komentář a neukončí ho ( takže spadne kompilátor ), například ( vybráno z C.cpp )

Kód: Vybrat vše

/* vsechny hodnoty ozavorkujeme, abychom zajistili spravnou aritmetiku pro pripad, ze bychom temito konstantami nasobili	 */
#define BLOCKING_OTHERS_LEN	(40+1)
#define KILL_COMMAND_LEN	(50+1)
#define MACHINE_LEN			(64+1)
#define	MODE_HELD_LEN		(13+1)
#define MODE_REQUESTED_LEN	(13+1)
#define NAME_LEN			(30+1)
#define NUMBER_LEN			(12+1)
#define OBJECT_TYPE_LEN		(19+1)
#define OBJECT_NAME_LEN		(30+1)
#/* define OBJECT_OWNE */ 
R_LEN	(30+1)
#define OWNER_LEN			(30+1)
#define OSUSER_LEN			(30+1)
#define PROCESS_LEN			(9+1)
#define TERMINAL_LEN		(10+1)
#define USER_NAME_LEN		(30+1)

Řešil někdo něco podobného?

od Eubie » 24. 11. 2006 11:43

Aha! Mě nebylo jasný, k čemu ta DECLARE SECTION je, když na matesovi projde v pohodě i proměnna která v ní není:) Děkuji nastokráte.

od rastik » 24. 11. 2006 11:33

Eubie píše:Je to zde. Pro úplnost přidávám, že mám Ora10g Release 2. ( soubor je nutno přejmenovat na pc, forum nedovoluje *.pc )
No, ono ten login naozaj nemas v DECLARE SECTION. Presun riadok 32 niekam medzi 17 a 21, potom ProC prejde bez chyby.

od Eubie » 24. 11. 2006 11:13

Je to zde. Pro úplnost přidávám, že mám Ora10g Release 2. ( soubor je nutno přejmenovat na pc, forum nedovoluje *.pc )
Přílohy
test_skola.txt
(2.99 KiB) Staženo 312 x

od rastik » 24. 11. 2006 10:54

Skus sem hodit ten zdrojak.

od Eubie » 24. 11. 2006 10:44

Ahoj, díky za odpověď.
Včera jsme byli u kopeckého a na notebooku sme nainstalovali 10g client EnterE. Vše v phoodě. Přijdu domu, nainstaluju 10g server enter.E a následně client Enter.E. Proc.exe funguje, ALE například na
EXEC SQL CONNECT :login zařve "byl nalezen neindentifikovaný identifikátor" ( tím myslí login ) i když jsem ho deklaroval ( je to příklad kterej mi mates v pohodě přeloží ). Takže moje proc nevidí Cčkovský proměnný. Má někdo podobný/stejný problém a nebo řešení?
Díky

od rastik » 22. 11. 2006 23:02

Eubie píše:...je ve verzi 10g Express Edition ( možná to XE je ten zádrhel... )...
To si mal povedat hned, 10g XE nie je normalny (bezny?) Oracle 10g, z mnohych pohladov je to takove divne cudo :?
Stiahni si EE.

Nahoru