Модераторы: gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Проблема с запросом 
:(
    Опции темы
Areostar
Дата 4.10.2008, 21:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1191
Регистрация: 5.4.2008

Репутация: нет
Всего: -2



Теперь такая проблема:

  В одном месте своего проекта пвтаюсь внести данные в базу данных:

Код
  public void AddGame(string Aht, string note, string sol, string end)
        {
            string SQL_String =
                "INSERT INTO Gold_Games_Table (Authors, Note, Solution, EndMessage)" +
                "VALUES(@Aht, @note, @sol, @end)";
            OleDbCommand comm = new OleDbCommand(SQL_String, conn);
            OleDbParameter param1 = new OleDbParameter("@Aht", OleDbType.Char, 50);
            param1.Value = Aht;
            OleDbParameter param2 = new OleDbParameter("@note", OleDbType.Char, 50);
            param2.Value = note;
            OleDbParameter param3 = new OleDbParameter("@sol", OleDbType.Char, 360);
            param3.Value = sol;
            OleDbParameter param4 = new OleDbParameter("@end", OleDbType.Char, 50);
            param4.Value = end;
            comm.Parameters.Add(param1);
            comm.Parameters.Add(param2);
            comm.Parameters.Add(param3);
            comm.Parameters.Add(param4);


            conn.Open();
            comm.Prepare();
            int rows = comm.ExecuteNonQuery();
            conn.Close();
        }

Комп заявляет о синтаксической ошибке в запросе в то время как подобная операция(правда для дргой таблицы) вопросов не вызвала:

Код
    public void AddSolution(string temp,
            string name, decimal val)
        {
            string SQL_String =
                "INSERT INTO Problems_Desposition_Table (Name, Desposition, Steps)" +
                "VALUES( @name , @temp , @val)";
            OleDbCommand comm = new OleDbCommand(SQL_String, conn);
            OleDbParameter param1 = new OleDbParameter("@name", OleDbType.Char, 50);
            param1.Value = name;
            OleDbParameter param2 = new OleDbParameter("@temp", OleDbType.Char, 100);
            param2.Value = temp;
            OleDbParameter param3 = new OleDbParameter("@val", OleDbType.SmallInt, 0);
            param3.Value = val;
            comm.Parameters.Add(param1);
            comm.Parameters.Add(param2);
            comm.Parameters.Add(param3);

            conn.Open();
            comm.Prepare();
            int rows = comm.ExecuteNonQuery();
            conn.Close();
        }


В чем можетбыть проблема!

 P.S: столбец Solution в базе данных имеет тип данных memo (это не может быть причиной!?)
PM MAIL   Вверх
shuttle
Дата 11.6.2009, 05:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 230
Регистрация: 9.4.2008

Репутация: нет
Всего: нет



Есть мнение что ругается на слово Note

Код

 string SQL_String =
                "INSERT INTO Gold_Games_Table (Authors,              Note,                Solution, EndMessage)" +
                "VALUES(@Aht, @note, @sol, @end)";


создаю таблицу
 
Код

OleDbCommand cmd = new OleDbCommand(    "CREATE TABLE BnkInSS1.dbf ("
                                                        +"TYP_DOC NUMERIC(1,0),"
                                                        +"NUM_DOC char(12),"
                                                        +"DATE_DOC datetime,"
                                                        +"ORG_FR char(15),"
                                                        +"ORG_FN char(254),"
                                                        ....
                                                        +"NOTE char(254),"
                                                        ....
                                                        + "PRIMARY KEY(TYP_DOC))"
                                                        , connection, trans);


ругается - ошибка синтаксиса при определении поля. Если изменить NOTE на другое слово - то все нормально. 
Может кто знает в чем проблема?

--------------------
PM MAIL   Вверх
1stain
Дата 11.6.2009, 09:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 486
Регистрация: 30.7.2007
Где: Киев - Харьков

Репутация: 5
Всего: 40



вместо Note пиши [Note] (с квадратными скобками). А еще лучше- переименуй это поле. Использовать ключевые слова в названиях полей - не очень хорошая идея.

З.Ы. в следующий раз пиши название СУБД.


--------------------
Все знают, что это невозможно. Но вот приходит невежда, которому это неизвестно - он-то и делает открытие. (Albert Einstein)
user posted image
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
stab
mr.DUDA
Exception

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, stab, mr.DUDA, Exception.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Базы данных под .NET | Следующая тема »


 




[ Время генерации скрипта: 0.0400 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.