Na lang zoeken op GoT en zelf trachten een oplossing te vinden, wat vruchteloze pogingen zijn gebleken... toch maar besloten om hier mijn probleem voor te leggen.
Het zit zo: De opdracht die uitgevoerd moet worden is om een messenger te programmeren, die gebruik maakt van RMI, Sybase en Java. Het RMI gedeelte is vooralsnog geen probleem. Het probleem zit 'm juist in het inserten van een allereerste record in de database die is opgezet om gegevens van gebruikers in te bewaren.
De DDL van de betreffende tabellen waarbij het mislukt:
CREATE TABLE gebruiker (
email text NOT NULL,
fullname text,
screenname text NOT NULL,
address text,
telephone text,
extra text,
id text NOT NULL,
PRIMARY KEY (id) ,
);
CREATE TABLE contactgroup (
contactgroep_id int NOT NULL,
user_id text NOT NULL,
contactgroupnaam text NOT NULL,
primary key (contactgroep_id),
foreign key (user_id) references gebruiker
);
CREATE TABLE contact (
contactgroep_id int NOT NULL ,
contact_id text NOT NULL ,
contact_status text default NULL,
foreign KEY (contactgroep_id) references contactgroup
);
CREATE TABLE login_geb (
user_id text NOT NULL,
email text NOT NULL,
wachtwoord text NOT NULL,
PRIMARY KEY (email),
foreign key (user_id) references gebruiker
);
Ongeacht in welke tabel ik ook iets in wil voeren het mislukt als ik het vanuit mijn Java - Odbc klasse uitvoer. Maar! als ik de regel "handmatig" invoer in de console die is bijgeleverd bij Sybase, dan wordt de regel keurig toegevoegd.
Aangezien ik ook een aantal System.out.println 's in de Java code heb gezet kan ik precies zien welke Sql-query er wordt verstuurd. Deze query's zijn mijns inziens goed, aangezien ze wel werken bij het handmatig invoeren zoals eerder gezegd.
Het verhaal wordt nog interessanter, op het moment dat ik een record wil inserten vanuit Java, en de tabel is niet leeg, (dus het record wat ik dan toevoeg is niet het eerste record) dan verloopt het goed, en wordt het record keurig ge-insert.
Dus nu is mijn vraag, wie weet wat ik verkeerd doe, en wat ik er aan kan doen.
Onderstaand is een sql-query die ik opbouw in mijn java-code, en die dus mislukt.
insert into gebruiker values('aw@hotmail.com','ton','testton','ttt','06189','geen','1');
Wie helpt? Bvd!
Het zit zo: De opdracht die uitgevoerd moet worden is om een messenger te programmeren, die gebruik maakt van RMI, Sybase en Java. Het RMI gedeelte is vooralsnog geen probleem. Het probleem zit 'm juist in het inserten van een allereerste record in de database die is opgezet om gegevens van gebruikers in te bewaren.
De DDL van de betreffende tabellen waarbij het mislukt:
CREATE TABLE gebruiker (
email text NOT NULL,
fullname text,
screenname text NOT NULL,
address text,
telephone text,
extra text,
id text NOT NULL,
PRIMARY KEY (id) ,
);
CREATE TABLE contactgroup (
contactgroep_id int NOT NULL,
user_id text NOT NULL,
contactgroupnaam text NOT NULL,
primary key (contactgroep_id),
foreign key (user_id) references gebruiker
);
CREATE TABLE contact (
contactgroep_id int NOT NULL ,
contact_id text NOT NULL ,
contact_status text default NULL,
foreign KEY (contactgroep_id) references contactgroup
);
CREATE TABLE login_geb (
user_id text NOT NULL,
email text NOT NULL,
wachtwoord text NOT NULL,
PRIMARY KEY (email),
foreign key (user_id) references gebruiker
);
Ongeacht in welke tabel ik ook iets in wil voeren het mislukt als ik het vanuit mijn Java - Odbc klasse uitvoer. Maar! als ik de regel "handmatig" invoer in de console die is bijgeleverd bij Sybase, dan wordt de regel keurig toegevoegd.
Aangezien ik ook een aantal System.out.println 's in de Java code heb gezet kan ik precies zien welke Sql-query er wordt verstuurd. Deze query's zijn mijns inziens goed, aangezien ze wel werken bij het handmatig invoeren zoals eerder gezegd.
Het verhaal wordt nog interessanter, op het moment dat ik een record wil inserten vanuit Java, en de tabel is niet leeg, (dus het record wat ik dan toevoeg is niet het eerste record) dan verloopt het goed, en wordt het record keurig ge-insert.
Dus nu is mijn vraag, wie weet wat ik verkeerd doe, en wat ik er aan kan doen.
Onderstaand is een sql-query die ik opbouw in mijn java-code, en die dus mislukt.
insert into gebruiker values('aw@hotmail.com','ton','testton','ttt','06189','geen','1');
Wie helpt? Bvd!