2013-04-14 4 views
1

Я очень новичок в MySQL, поэтому, прежде чем вы решите уменьшить это, просто добавьте комментарий, и я удалю сообщение. Я следую учебнику по android-hive, http://www.androidhive.info/2012/01/android-login-and-registration-with-php-mysql-and-sqlite/, который использует MySQL в качестве базы данных для хранения информации о пользователе. Я установил MySQL на экземпляре AWS EC2 Linux, наряду с Apache Tomcat и т.д. и т.п. В учебнике говорится:Ошибка MySQL 1064 - правильный синтаксис?

Open your mysql console or phpmyadmin and run following query to create database 
and users table: 

create database android_api /** Creating Database **/ 

use android_api /** Selecting Database **/ 

create table users(
uid int(11) primary key auto_increment, 
unique_id varchar(23) not null unique, 
name varchar(50) not null, 
email varchar(100) not null unique, 
encrypted_password varchar(80) not null, 
salt varchar(10) not null, 
created_at datetime, 
updated_at datetime null 
); /** Creating Users Table **/ 

Я подключаюсь к моему примеру Linux через SSH и запустить MySQL и запустить запрос, указанный в руководство. Я получаю следующее сообщение об ошибке:

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 
'use android_api 
create table users(
uid int(11) primary key auto_increment, 
' at line 3 

Я действительно не знаю, как это решить, и я ценю любую помощь, благодарю вас за ваше время.

ответ

2

похоже, что вы пропустили разделитель операторов. попробуйте использовать ";" в конце каждого запроса.

+0

. Это достаточно близко. Я просто неправильно ввел запрос ... очень глупые ошибки начинающих. Спасибо, ребята. – MaxK

1

В коде есть

use android_api //this one is correct 

, но в сообщении об ошибке цитата

uses android_api 

так выглядит этот код не совсем то же самое, что у вас есть проблемы с.

+0

Да, я заметил это и снова запустил его ... Вот новое сообщение об ошибке: ERROR 1064 (42000): У вас есть ошибка в синтаксисе SQL; проверьте, что соответствует вашей версии сервера MySQL для правильного синтаксиса для использования рядом с 'use android_api . Создайте пользователей таблицы ( uid int (11) primary key auto_increment, ' в строке 3 – MaxK

+0

используйте android_api и создайте таблицу ... это два отдельных запроса, если вы пытаетесь называть их одним без правильного разделителя. Вы получаете ошибку – Gustek

0

есть использование ошибки syntex ";" после второго заявления вроде использовать android_api; это сработало для меня :-)

+0

Ваш ответ, скорее всего, правильный, но он не основывается на уже существующих ответах, присутствующих здесь. – Makoto

0

Если кто-нибудь столкнется с этим в будущем. Решение состоит в том, чтобы сначала использовать запрос создания базы данных, а затем после создания базы данных использовать запрос «use» и создать запрос таблицы.

+1

В принятом ответе уже указывалось, что проблема была типографской ошибкой. – Takarii

+0

Я считаю, что это не очень понятно. –

+0

Как это сделать? Вы можете отправить несколько заявлений в один акт on ';' используется для определения конца одного оператора и начала следующего. Это может быть база данных 101 – Takarii