Schrift
[thread]3591[/thread]

Class::DBI SQLite2



<< >> 7 Einträge, 1 Seite
esskar
 2005-07-13 04:12
#33371 #33371
User since
2003-08-04
7321 Artikel
ModeratorIn

user image
hi...
hab mit dbish dbi:SQLite2:db.sqlite2 eine Datenbank und darin
mehere tabellen erzeugt
ich kann datensätze in die datenbank schreiben (mir create), aber ich kann nichts ändern.
ich hab via ->autoupdate(0); autoupdate abgestellt, und rufe auch schon update auf (liefert 1 zurück)
aber wenn ich danach die ändernung ansehen will, ist sie nicht geschrieben!
was ich auch nicht versteh, dass das object, welches ich mit search finde, die primary-keys nicht setzt:
konkret, (sql siehe unten) wenn ich $obj = $self->serach(userName => $username) finde, dann ist $obj->userId undefined, $obj->userName und $obj->passWord sind jedoch gefüllt.

Hat jemand ne idee?

Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
DROP TABLE 'oxwebmail_user';
CREATE TABLE 'oxwebmail_user' (
'userId' int(20) PRIMARY KEY,
'userName' char(128) NOT NULL default '',
'passWord' char(256) NOT NULL default ''
);

DROP TABLE 'oxwebmail_user_profile';
CREATE TABLE 'oxwebmail_user_profile' (
 'profileId' int(20) PRIMARY KEY,
 'userId' int(20),
 'firstName' char(128),
 'lastName' char(128),
 'userGroup' char(64),
 'emailAddr' char(256),
 'signatureText' text
);
\n\n

<!--EDIT|esskar|1121213590-->
coax
 2005-07-13 05:04
#33372 #33372
User since
2003-08-11
457 Artikel
BenutzerIn
[default_avatar]
[quote=esskar,13.07.2005, 02:12]wenn ich $obj = $self->serach(userName => $username) finde, dann ist $obj->userId undefined, $obj->userName und $obj->passWord sind jedoch gefüllt.[/quote]
Den Primary Key bekommst du durch $obj->id()
btw: search() verhaelt sich im skalaren Kontext anders als im Listenkontext, im skalaren Kontext bekommst du ein Class::DBI::Iterator-Objekt.

Bei deinen anderen Problem kann ich dir leider nicht helfen.

Grusz coax.
,,Das perlt aber heute wieder...'' -- Dittsche
esskar
 2005-07-13 12:05
#33373 #33373
User since
2003-08-04
7321 Artikel
ModeratorIn

user image
->id hatte ich schon versucht; selbe baustelle...
den unterschied zweischen dem scalaren und listen-kontext war mir bekannt... hmm\n\n

<!--EDIT|renee|1121242653-->
renee
 2005-07-13 12:20
#33374 #33374
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Ich kenne Class::DBI nicht, aberhast Du mal nach dem Update ein explizites commit (bzw. dbi_commit) probiert??
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
esskar
 2005-07-13 14:34
#33375 #33375
User since
2003-08-04
7321 Artikel
ModeratorIn

user image
hab ich nicht...
werde ich später mal versuchen!
esskar
 2005-07-13 20:34
#33376 #33376
User since
2003-08-04
7321 Artikel
ModeratorIn

user image
hmm
obwohl ich
Code: (dl )
->autoupdate(0);

sage, bekomm ich bei dbi_commit

commit ineffective with AutoCommit enabled at F:/Perl/site/lib/Ima/DBI.pm line 569.
commit ineffective with AutoCommit at F:/Perl/site/lib/Ima/DBI.pm line 569.


hat jemand vielleicht ein DBI::Class SQLITE snippet für mich?
esskar
 2005-07-13 22:32
#33377 #33377
User since
2003-08-04
7321 Artikel
ModeratorIn

user image
aha;
meine tabelle war falsch

'userId' INTEGER PRIMARY KEY,

muss es heißen für autoincrement

RTFM
<< >> 7 Einträge, 1 Seite



View all threads created 2005-07-13 04:12.