Topic: nevykdo SQL uzklausos

sveiki,

pas mane kompe idiegta WAMP5 serveris: apache + mysql + php. isijungsiu mysql console ir pradedu SQL uzklausas:

SHOW DATABASES; // suzinau databases
CREATE DATABASE test; // susikuriu DB
USE test; // paleidziu naudojimui
SHOW TABLES; // pasitikrinu ar nera jokiu lenteliu

ir nejna sukurti lenteles.. rashau:

CREATE TABLE nariai (
ID int(3) auto_increment, unsigned, not_null
username varchar(30) not_null
e-mail varchar(30) not null
PRIMARY KEY (ID, username);

ir ismeta tokia klaida: ERROR 1064 (42000): 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 'unsig
ned not_null
username varchar(30) not_null
e-mail varchar(30) not_null
prim' at line 2

pagelbekit, dekoju.

Re: nevykdo SQL uzklausos

La,

Pabandyk taip:

CREATE TABLE `nariai` (
`ID` tinyint( 3 ) unsigned NOT NULL AUTO_INCREMENT ,
`username` varchar( 30 ) NOT NULL ,
`e-mail` varchar( 30 ) NOT NULL ,
PRIMARY KEY ( `ID` , `username` )
)

Reikia paisyti sintaksę - pridėjai per daug kablelių, kurių stulpelio aprašyme neturi būti:

column_definition:
    col_name data_type [NOT NULL | NULL] [DEFAULT default_value]
      [AUTO_INCREMENT] [UNIQUE [KEY] | [PRIMARY] KEY]
      [COMMENT 'string'] [reference_definition]

Re: nevykdo SQL uzklausos

pabandziau kaip siulei:

CREATE TABLE `nariai` (
`ID` tinyint( 3 ) unsigned NOT NULL AUTO_INCREMENT ,
`username` varchar( 30 ) NOT NULL ,
`e-mail` varchar( 30 ) NOT NULL ,
PRIMARY KEY ( `ID` , `username` )
)

bet kaip uzbaigti viska? prie paskutines eilutes pridejau kabliatashki - );     nepadejo. bandau visaip, bet kai tik bandau padeti kabliataski vel meta klaida. ka daryti?

Re: nevykdo SQL uzklausos

Taip, kad konsolėje vykdytu užklausą reikalingas gale kabliataškis.

O klaidos pranešimas koks? Toks pats?

Re: nevykdo SQL uzklausos

taip, toks pats. dar vienas idomus dalykas tas, kad kai noriu sukurti per phpMyAdmin lentele kokia, taip pat nesukuria.. databases sukuria, bet lenteliu ne..

Re: nevykdo SQL uzklausos

Kažkaip nelabai tikiu, kad užklausa:

CREATE TABLE `nariai` (
`ID` tinyint( 3 ) unsigned NOT NULL AUTO_INCREMENT ,
`username` varchar( 30 ) NOT NULL ,
`e-mail` varchar( 30 ) NOT NULL ,
PRIMARY KEY ( `ID` , `username` )
);

Meta tą pačią klaidą dėl sintaksės ;) Padaryk copy-paste ir parodyk klaidą iš naujo.

Re: nevykdo SQL uzklausos

http://www.mysql.lt/forumas/img/forumas_mysql_001.jpg

Re: nevykdo SQL uzklausos

Idomu ;)

O kaip tarkim veikia:

CREATE TABLE test1(test2 TEXT);
CREATE TABLE `test3`(test3 TEXT);

Kokie windowsai?
Kokie regioniniai nustatymai?
Kokia mysql versija (mysql -V)?
Klientas yra standartinis mysql (wamp/bin/mysql.exe)?

Re: nevykdo SQL uzklausos

pirmasis kodas suveike: CREATE TABLE test1(test2 TEXT);
bet antrasis ne.. Windowsai: XP proffesional. mysql version: 5.0.22-community-nt. klientas yra tokioj direktorijoj: wamp/mysql/bin/mysql.exe. o del regioniniu nustatymu nznau, nes nlb suprantu kas tie regioniniai nustatymai..

Re: nevykdo SQL uzklausos

Tai vat taip turi veikti:

CREATE TABLE nariai (
   ID tinyint(3) unsigned NOT NULL AUTO_INCREMENT ,
   username varchar(30) NOT NULL ,
   e-mail varchar(30) NOT NULL ,
   PRIMARY KEY(ID, username)
);

Re: nevykdo SQL uzklausos

http://www.mysql.lt/forumas/img/forumas_mysql_002.jpg

Re: nevykdo SQL uzklausos

Tai vietoj e-mail parašyk email.

Pas tave kažkokios bėdos su viengubų kabučių ir backtik'u interpretavimu. Tikriausiai tai susije labiau su pačių windowsų nustatymais negu su mysql'o (nes WAMP'ą naudoju pats - tokio atvejo nebuvo).

p.s. vietoj imidžų gali nukopijuoti teksta ir idėti tarp code tag'ų