php.de

Zurück   php.de > Webentwicklung > Datenbanken

Datenbanken SQL und Co

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 25.10.2006, 12:47  
Benutzer
 
Registriert seit: 30.10.2004
Beiträge: 92
DannyD
Standard MySQL Befehl als default?

Hallo,

für ein Aktivierungssystem möchte ich, dass MySQL den Schlüssel selbstständig kreiert. Als Befehl nehme ich dafür MD5(NOW()*RAND())

Nun möchte ich, dass dieser Befehl als Standardwert eines Datenfeldes eingetragen wird (also nicht der Befehl sondern das Ergebnis :wink: )

Probiert habe ich es so:
==============================
ALTER TABLE `test` CHANGE `key` `key` VARCHAR(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT MD5(NOW()*RAND())
==============================

Aber MySQL gibt eine Fehlermeldung aus:
==============================
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'MD5(NOW()*RAND())' at line 1
==============================

Wie muss ich es machen, damit es so funktioniert, wie ich es beschrieben habe? Müsste doch eigentlich so ähnlich gehen, oder?

Grüße,
Daniel
__________________
Das Recht auf Dummheit gehört zur Garantie der freien Entfaltung der Persönlichkeit (Mark Twain).
DannyD ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 25.10.2006, 13:52  
Erfahrener Benutzer
 
Registriert seit: 05.07.2004
Beiträge: 1.476
DiBo33
Standard

Jaja, Manual lesen ist sehr sehr schwer.

http://dev.mysql.com/doc/refman/5.0/...ate-table.html
Zitat:
Zitat von MySQL
The DEFAULT clause specifies a default value for a column. With one exception, the default value must be a constant; it cannot be a function or an expression.
DiBo33 ist offline   Mit Zitat antworten
Alt 25.10.2006, 16:00  
Benutzer
 
Registriert seit: 30.10.2004
Beiträge: 92
DannyD
Standard

Diesen Abschnitt habe ich leider erst nach meinem Post gefunden. Allerdings bin ich mir sicher, dass es irgendwie anders gehen müsste. Ich habe vorher zwar auch schon das Manual durchforstet, bloß halt diesen Abschnitt nicht gefunden.

Dann frage ich halt anders: gibt es einen Trick 7, um zum gewünschten Ergebnis zu kommen?
__________________
Das Recht auf Dummheit gehört zur Garantie der freien Entfaltung der Persönlichkeit (Mark Twain).
DannyD ist offline   Mit Zitat antworten
Alt 25.10.2006, 16:14  
Erfahrener Benutzer
 
Registriert seit: 13.11.2005
Beiträge: 2.583
xabbuh
Standard

Schau dir doch mal Trigger an.
xabbuh ist offline   Mit Zitat antworten
Alt 25.10.2006, 16:34  
Erfahrener Benutzer
 
Registriert seit: 05.07.2004
Beiträge: 1.476
DiBo33
Standard

Wie xabbuh schon schrieb, mit Trigger sollte das machbar sein.

Bei MySQL < 5 wäre eine Möglichkeit direkt nach anlegen des Datensatzes den Wert mittels UPDATE einzutragen.
DiBo33 ist offline   Mit Zitat antworten
Alt 25.10.2006, 17:38  
Benutzer
 
Registriert seit: 30.10.2004
Beiträge: 92
DannyD
Standard

Das mit den Triggern ist das wonach ich gesucht habe, danke.

Normalerweise hätte ich es auch mit INSERT / UPDATE gemacht. Bloß aktuell kann ich das nicht einsetzen, da diese Aufgaben ein bereits kompilierter JAVA-Server übernimmt. Deswegen habe ich leider keinen Zugriff auf die Queries.

Danke euch nochmal für die Hilfe!
__________________
Das Recht auf Dummheit gehört zur Garantie der freien Entfaltung der Persönlichkeit (Mark Twain).
DannyD ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
SELECT-Abfrage optimieren pz6j89 Datenbanken 14 17.04.2008 17:37
Normalisierung einer chaotischen Tabelle maeck Datenbanken 10 12.12.2006 18:17
Gute Struktur heohni Datenbanken 5 29.05.2006 11:42
default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP Timo Trallala Datenbanken 2 06.02.2006 11:39
[Erledigt] Bestell-Tabelle ok? PHP-Fortgeschrittene 4 28.11.2005 21:35
[Erledigt] kann keine Foreign Key Anlegen Datenbanken 1 17.10.2005 11:11
[Erledigt] Problem mit mySQL Datenbanken 7 27.09.2005 12:06
PHP-Fehlermeldung, weiss nicht mehr weiter PHP Tipps 2005-2 12 21.09.2005 12:56
[Erledigt] MySQL Befehl für MySQL 4.0.24 Datenbanken 2 23.08.2005 17:35
Suche Tipps für Persormance-Steigerung (Geld für Nützliches) Beitragsarchiv 18 16.08.2005 10:57
Befehl nicht kompatibel zwischen MySQL 4.1.10 und 4.1.11 Datenbanken 3 28.06.2005 11:36
[MySQL] Problem mit einer verschachtelten Abfrage aktionkuba Datenbanken 7 06.04.2005 14:07
mysql comandline befehl für import eines scripts Datenbanken 2 30.07.2004 15:57
regulaere ausdruecke in einem MySQL befehl mit REGEXP Datenbanken 3 16.06.2004 23:07
HILFE: Column count doesn't match value count at row 1 Datenbanken 17 12.06.2004 16:45

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
mysql default, default mysql, mysql default value, mysql standardwert, md5 befehl, #1064 - you have an error in your sql syntax; check the manual that corresponds to your mysql server version for the right syntax to use near \'default character set utf8 collate utf8_general_ci\' at line 1, mysql default md5, mysql befehl md5, mysql default rand, #1064 default character set utf8 collate utf8_general_ci, default bei mysql, mysql default(), mysql befehle, befehl default, 1064 - you have an error in your sql syntax; check the manual that corresponds to your mysql server version for the right syntax to use near \'\' at line 1, mysql default befehl, php mysql standardwert, mysql md5 befehl, mysql: was bedeutet default, mysql befehel

Alle Zeitangaben in WEZ +2. Es ist jetzt 05:20 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.