WICHTig....query und einfügen

06/18/2015 03:16 36666669#1
hey, ich habe eben was cooles bekommen zum einfügen, ist wie ein Reititer... cliet habe ich alles hinzugefügt aber ic weiß nicht wie ich solche query erstellen kann... kann mir jemadn helfen?:confused:
06/18/2015 08:46 Kampfzwerg!#2
musst nicht unbedingt eine query schreiben
geh in Navicat und in deiner item_proto.. dann unten links auf das +
dann kannst du dir selbst deinen eintrag machen..
mit der zeit lernst du auch wie viele spalten deine item_proto hat
welche spalte für was steht, hier aber mal ein kleines beispiel wie es aussieht
aber wie gesagt kann je nacj item_proto die spalten verschoben werden, weil jede bzw die meisten item_protos anderes sind.

Code:
INSERT INTO `item_proto` VALUES ('vnum', name, locale_name, 'type', 'subtype', 'weight', 'size', 'antiflag', 'flag', 'wearflag', 'immuneflag', 'gold', 'shop_buy_price', 'refined_vnum', 'refine_set', 'refine_set2', 'magic_pct', 'limittype0', 'limitvalue0', 'limittype1', 'limitvalue1', 'applytype0', 'applyvalue0', 'applytype1', 'applyvalue1', 'applytype2', 'applyvalue2', 'value0', 'value1', 'value2', 'value3', 'value4', 'value5', 'socket0', 'socket1', 'socket2', 'socket3', 'socket4', 'socket5', 'specular', 'socket_pct', 'addon_type', 'vnum_range');
so sollte es bei den neuen item_protos aussehen..
einfach den inhalt z.b
vnum = durch deine ID des items ersetzen
name = wie das item heißt z.b Weißer Löwe
locale_name = z.b "Weißer Löwe Siegel" ingame würde dann stehen du hast einen Weißen Löwe Siegel aufgehoben..

und den rest durch zahlen ersetzen oder auch das eine oder andere feld leer lassen so sollte es am ende aussehen

Code:
INSERT INTO `item_proto` VALUES ('71124', Weißer Löwe, Weißer Löwe Siegel, '18', '2', '0', '1', '74112', '9216', '0', '', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '1440', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0');
viel spaß hoffe das war verständlich

lg
06/18/2015 09:05 rollback#3
Quote:
Originally Posted by Kampfzwerg! View Post
musst nicht unbedingt eine query schreiben
geh in Navicat und in deiner item_proto.. dann unten links auf das +
dann kannst du dir selbst deinen eintrag machen..
mit der zeit lernst du auch wie viele spalten deine item_proto hat
welche spalte für was steht, hier aber mal ein kleines beispiel wie es aussieht
aber wie gesagt kann je nacj item_proto die spalten verschoben werden, weil jede bzw die meisten item_protos anderes sind.

Code:
INSERT INTO `item_proto` VALUES ('vnum', name, locale_name, 'type', 'subtype', 'weight', 'size', 'antiflag', 'flag', 'wearflag', 'immuneflag', 'gold', 'shop_buy_price', 'refined_vnum', 'refine_set', 'refine_set2', 'magic_pct', 'limittype0', 'limitvalue0', 'limittype1', 'limitvalue1', 'applytype0', 'applyvalue0', 'applytype1', 'applyvalue1', 'applytype2', 'applyvalue2', 'value0', 'value1', 'value2', 'value3', 'value4', 'value5', 'socket0', 'socket1', 'socket2', 'socket3', 'socket4', 'socket5', 'specular', 'socket_pct', 'addon_type', 'vnum_range');
so sollte es bei den neuen item_protos aussehen..
einfach den inhalt z.b
vnum = durch deine ID des items ersetzen
name = wie das item heißt z.b Weißer Löwe
locale_name = z.b "Weißer Löwe Siegel" ingame würde dann stehen du hast einen Weißen Löwe Siegel aufgehoben..

und den rest durch zahlen ersetzen oder auch das eine oder andere feld leer lassen so sollte es am ende aussehen

Code:
INSERT INTO `item_proto` VALUES ('71124', Weißer Löwe, Weißer Löwe Siegel, '18', '2', '0', '1', '74112', '9216', '0', '', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '1440', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0', '0');
viel spaß hoffe das war verständlich

lg
Die Inserts würden so nicht funktionieren, du musst um einen varchar, char oder alles was eben Text ist die Eingabe in ' setzen. Alles was zahlen sind sollte man allerdings nicht in ' schreiben. MySQL nimmt zwar auch für einen int und anderen Zahlentypen die Werte in ' an, allerdings sollte man sich das nicht angewöhnen, denn laut ANSI SQL darf man Zahlentypen nur direkt setzen.
Du hast es in deinem Insert also genau falsch herum gemacht ;)
06/18/2015 09:14 Kampfzwerg!#4
danke für die korrektur :)

also sollte es so aussehen?

Code:
INSERT INTO `item_proto` VALUES (71124, 'Weißer Löwe', 'Weißer Löwe Siegel', 18, 2, 0, 1, 74112, 9216, 0, , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1440, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
06/18/2015 09:21 rollback#5
Quote:
Originally Posted by Kampfzwerg! View Post
danke für die korrektur :)

also sollte es so aussehen?

Code:
INSERT INTO `item_proto` VALUES (71124, 'Weißer Löwe', 'Weißer Löwe Siegel', 18, 2, 0, 1, 74112, 9216, 0, , 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1440, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
genau.
Am besten setzt man sich für die ganzen Flags etc. noch einen Default-Wert (z.B. 0), dann muss man diese beim Erstellen eines neuen Items nicht immer reinschreiben.

Um nicht alle Werte beim Insert zu setzen muss man folgende Syntax verwenden:
Code:
INSERT INTO item_proto (vnum, locale_name, limittype0, limitvalue0, socket_pct, specular) VALUES (71124, 'Weißer Löwe', 0, 1, 0, 0);
alle nicht angegeben Werte werden hierbei auf den Default-Wert gesetzt. Wenn kein Default-Wert angegeben ist, wird es auf null gesetzt. Nullwerte können aber besonders in der item_proto beim Starten des Servers für Probleme sorgen, weshalb man sich zur Sicherheit alles auf "not null" setzt. Wenn man dann versucht eine Spalte auf null zu setzen, bekommt man einen Fehler, der darauf hinweist, dass dieses Feld nicht null sein darf.
06/18/2015 12:58 36666669#6
oh danke Für so viele narichten^^ ist ja nicht immer so, darf ich ein von euch in skype adden?, ich habe noch was nicht verstanden wie soll die "query" oder navicat wissen welches tier, npc etc meine, ? also ich lerne schnell wen mir einer das mir per skype erklärt dann weiß ich es, dann vergesse ich es nicht
06/18/2015 13:00 rollback#7
Über die vnum. Die vnum ist eindeutig und kann nicht mehrmals verwendet werden.
06/18/2015 13:00 Kampfzwerg!#8
in diesem tool findest du alles
welche nummer ein item haben muss für eine quest (18) usw

[Only registered and activated users can see links. Click Here To Register...]