database table aanmaken
Warbringer - 16/01/2007 12:52
Onbekend
Beste mensen.
In het PHP menu wil ik een nieuwe table maken.
Deze is van mijndomein.nl maar hij wilt hem niet maken.
Heb twee dingen geprobeert, maar nog niks.
Misschien iemand die een oplossing weet?
CREATE TABLE `administrator` (
`id` INT( 11 ) NOT NULL DEFAULT '0' AUTO_INCREMENT ,
`username` TEXT NOT NULL ,
`password` TEXT NOT NULL
) TYPE = MYISAM
MySQL retourneerde:
#1067 - Invalid default value for 'id'
CREATE TABLE `administrator` (
`id` INT( 11 ) NOT NULL DEFAULT '0' AUTO_INCREMENT ,
`username` TEXT NOT NULL ,
`password` TEXT NOT NULL
) TYPE = MYISAM
#1067 - Invalid default value for 'id'
Dat krijg ik dan te zien, ik heb inplaats van INT ook BIGINT geprobeerd maar ook daar werkt het niet helaas.
17 antwoorden
Gesponsorde links
marten - 16/01/2007 13:01
Beheerder
CREATE TABLE `administrator` (
`id` INT( 11 ) NOT NULL DEFAULT 0 AUTO_INCREMENT ,
`username` TEXT NOT NULL ,
`password` TEXT NOT NULL
) TYPE = MYISAM
getallen buiten quotes houden
Rens - 16/01/2007 13:30
Crew algemeen
CREATE TABLE `administrator` (
`id` INT( 11 ) NOT NULL AUTO_INCREMENT ,
`username` TEXT NOT NULL ,
`password` TEXT NOT NULL
) TYPE = MYISAM
CREATE TABLE `administrator` (
`id` INT( 11 ) NOT NULL AUTO_INCREMENT ,
`username` TEXT NOT NULL ,
`password` TEXT NOT NULL
) TYPE = MYISAM
Probeer het eens zonder default '0'
Thomas - 16/01/2007 13:40
Moderator
Een auto_increment kolom kan nooit 0 zijn idd.
De fout zegt dit haast letterlijk.
Warbringer - 16/01/2007 13:44 (laatste wijziging 16/01/2007 13:45)
Onbekend
dan krijg ik de volgende foutmelding:
SQL-query:
CREATE TABLE `administrator` (
`id` BIGINT NOT NULL AUTO_INCREMENT ,
`gebruikersnaam` TEXT NOT NULL ,
`wachtwoord` TEXT NOT NULL
) TYPE = MYISAM
MySQL retourneerde:
#1075 - Incorrect table definition; there can be only one auto column and it must be defined as a key
SQL- query:
CREATE TABLE `administrator` (
`id` BIGINT NOT NULL AUTO_INCREMENT ,
`gebruikersnaam` TEXT NOT NULL ,
`wachtwoord` TEXT NOT NULL
) TYPE = MYISAM
#1075 - Incorrect table definition; there can be only one auto column and it must be defined as a key
Ik heb geen andere table's in mijn database, de database is 100% leeg dit wordt dus de aller eerste table die erin moet komen
Citaat:
FangorN
Een auto_increment kolom kan nooit 0 zijn idd.
De fout zegt dit haast letterlijk.
Er was een 'voorbeeld' table gemaakt bij het aanvragen van mijn database... hierin was de waarde wel 0 dus... ik snap het allemaal niet meer haha, maar ook 1 of 2 of 10 of 100 pakt hij niet... niks werkt helaas
Rens - 16/01/2007 13:46
Crew algemeen
CREATE TABLE `administrator` (
`id` BIGINT NOT NULL AUTO_INCREMENT ,
`gebruikersnaam` TEXT NOT NULL ,
`wachtwoord` TEXT NOT NULL,
PRIMARY KEY(id)
) TYPE = MYISAM;
CREATE TABLE `administrator` (
`id` BIGINT NOT NULL AUTO_INCREMENT ,
`gebruikersnaam` TEXT NOT NULL ,
`wachtwoord` TEXT NOT NULL ,
) TYPE = MYISAM;
Wel een primaire sleutel aangeven hè...
http://www.site...EATE_TABLE
Warbringer - 16/01/2007 15:04
Onbekend
owkee lol. en hoe voer ik die in? als INT, of BIGINT of hoe precies? die primary key?
veld ; type ; lengte/waardes ; collatie ; attributen ; null ; standaardwaarde ; extra
zijn de opties die ik heb
Simon - 16/01/2007 16:42 (laatste wijziging 16/01/2007 16:43)
PHP expert
je moet zo'n bolletje aanvinken, je hebt er normaal 3
primary, index, en nog eentje die ik niet meteen weet
edit: de 3e was dus 'unieke waarde'
Warbringer - 16/01/2007 18:22
Onbekend
Lukt nu nog niet sorry lol.
Het creeren van het volgende lukt wel:
`id` BIGINT NOT NULL AUTO_INCREMENT ,
`gebruikersnaam` TEXT NOT NULL ,
`wachtwoord` TEXT NOT NULL,
maar dan die laatste...
PRIMARY KEY(id)
Hoe moet ik deze invullen?
Ik heb de volgende vakjes:
veld ; type ; lengte/waardes ; collatie ; attributen ; null ; standaardwaarde ; extra
Verder, kan ik zeggen (aanvinken) UNIQUE en KEY en nog wat andere... de laatste (primary key) en eerste (id) moeten waar op staan?
Warbringer - 16/01/2007 18:27 (laatste wijziging 16/01/2007 18:39)
Onbekend
werkt perfect dankjewel, maar toch is er ergens iets nie goed... kan niks in de database toevoegen!?
Citaat:
MySQL 4.1.11-Debian_4sarge7
misschien verkeerde MySQL versie voor onze PHP commando's?
<?php
mysql_connect("xxx","xxx","xxx");
mysql_select_db("xxx");
$query = "INSERT INTO administrator (username, password) VALUES (xxx, xxx)";
mysql_query($query);
?>
<?php
$query = "INSERT INTO administrator (username, password) VALUES (xxx, xxx)" ;
?>
Rens - 16/01/2007 18:44
Crew algemeen
Error Handling gebruiken!!!!!!!!
mysql_query($query) or die(MySQL_Error());
Ultimatum - 16/01/2007 18:45
PHP expert
<?php
$query = "INSERT INTO administrator (username, password) VALUES (xxx, xxx)";
mysql_query($query) or die(mysql_error());
?>
<?php
$query = "INSERT INTO administrator (username, password) VALUES (xxx, xxx)" ;
?>
Warbringer - 16/01/2007 18:47 (laatste wijziging 16/01/2007 18:49)
Onbekend
geen error, had ik wel (error handling erin) maar niet hier geschreven sorry whaha maar iig ik krijg geen error, alles gaat goed zegt hij...
Berten - 17/01/2007 01:12 (laatste wijziging 17/01/2007 01:13)
PHP beginner
Misschien werkt dit
wel raar dat je geen foutmelding krijgt
<?php
$query = "INSERT INTO administrator values ('','xxx','xxx')";
mysql_query($query) or die(mysql_error());
?>
<?php
$query = "INSERT INTO administrator values ('','xxx','xxx')" ;
?>
compudoc - 17/01/2007 07:47
PHP beginner
ik denk zo:
<?php
$query = "INSERT INTO administrator (username, password) VALUES ('$username', '$password')";
mysql_query($query) or die(mysql_error());
?>
<?php
$query = "INSERT INTO administrator (username, password) VALUES ('$username ', '$password ')" ;
?>
Gesponsorde links
Dit onderwerp is gesloten .