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

Поиск:

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


Эксперт
***


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

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



И ещё вопрос. Как удолить запись из таблицы?

 Запрос уже есть вроде:
Код

      string SQL_String = "DELETE FROM Gold_Games_Table" +
                "WHERE Authors =" + name;


 а вот как средствами ADO.NET его выполнить!?(С#)
PM MAIL   Вверх
bopoha
Дата 8.5.2009, 14:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1283
Регистрация: 10.5.2006
Где: Беларусь, Минск

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



Смотри OleDbCommand и около того.
PM MAIL WWW ICQ Skype GTalk   Вверх
Sharki
Дата 9.5.2009, 05:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


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

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



Гдето так :
Код

private void btn_Delete_Click(object sender, EventArgs e)
        {

            try
            {
                this.conn = new OleDbConnection();
                
                conn.ConnectionString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Data\Client_DB.mdb;Jet OLEDB:Database Password=111";
                this.adapter = new OleDbDataAdapter();

                this.adapter.DeleteCommand = new OleDbCommand();

                this.adapter.DeleteCommand.Connection = this.conn;
                this.conn.Open();

                

                this.adapter.DeleteCommand.CommandText =
                 " Delete * from TBL_Clients where ClientName = \'" + this.txt_Find.Text + "\'";


                this.adapter.DeleteCommand.ExecuteNonQuery();

                this.conn.Close();

                MessageBox.Show("Record deleted Successfully \n \n This Client CLEAR !!!", " Warning !!! Warning !!! Warning !!!", MessageBoxButtons.OK, MessageBoxIcon.Warning);  //inform the user

            }

            catch (System.Data.OleDb.OleDbException exp)
            {

                MessageBox.Show(exp.ToString());
            }
            finally
            {
                //close the connection
                this.conn.Close();

            }
            txt_Find.Clear();

        }

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


Эксперт
***


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

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



Попробывал так:

      public void DeleteGame(string name)
        {
            OleDbDataAdapter adapter = new OleDbDataAdapter();
            adapter.DeleteCommand = new OleDbCommand();
            adapter.DeleteCommand.Connection = conn;
            conn.Open();
            adapter.DeleteCommand.CommandText = "DELETE Num_Game, Authors, Note, Solution, EndMessage FROM Gold_Games_Table" +
                "WHERE Authors =" + name;
            adapter.DeleteCommand.ExecuteNonQuery();
            conn.Close();
        }

 No value given for one or more required parameters.

 о чём это он!?
PM MAIL   Вверх
bopoha
Дата 9.5.2009, 12:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1283
Регистрация: 10.5.2006
Где: Беларусь, Минск

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



Цитата(Areostar @  9.5.2009,  09:52 Найти цитируемый пост)
 No value given for one or more required parameters.

Хотя бы строчку кода укажите. 

P.S. По-мойму адаптер тут совершенно не нужен. Лишнее звено, т.к. OleDbCommand может работать и без него.

Добавлено через 1 минуту и 42 секунды
Цитата(Areostar @  9.5.2009,  09:52 Найти цитируемый пост)
DELETE Num_Game, Authors, Note, Solution, EndMessage

Читайте спецификацию SQL по предложению DELETE. Правильно писать без имен полей.
Так:
Код

DELETE FROM ... WHERE ...


или так
Код

DELETE * FROM ... WHERE ...


PM MAIL WWW ICQ Skype GTalk   Вверх
Areostar
Дата 9.5.2009, 15:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

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



Пробаю так:

string SQL_String = "DELETE * FROM Gold_Games_Table" +
                " WHERE Authors =" + name;

            conn.Open();
            OleDbCommand comm = new OleDbCommand(SQL_String, conn);
            comm.ExecuteNonQuery();
            conn.Close();


Комп указывает на предпоследную строку:   Syntax error (missing operator) in query expression 'Authors =4вак443в'.

На 4вак443в не обрашайте внимания Такая строка действительно есть ву моём БД!
PM MAIL   Вверх
Rififi
Дата 9.5.2009, 19:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

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



пиши ... where Authors = ?
и используй параметры команды
подробности - гоогле OleDbParameter
PM MAIL   Вверх
Areostar
Дата 9.5.2009, 20:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

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



Вопрос Решён! ВСЕМ ОГРОМНОЕ СПАСИБО!!!
PM MAIL   Вверх
bopoha
Дата 9.5.2009, 22:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1283
Регистрация: 10.5.2006
Где: Беларусь, Минск

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



Цитата(Areostar @  9.5.2009,  15:34 Найти цитируемый пост)
'Authors =4вак443в'.

Можно обойтись без параметров. Ошибка заключается в том, что все строки должны быть обрамлены кавычками.
Т.е. должно получится так:
Код

"Authors = \"4вак443в\""


Т.е. должно быть так:
Код

"... WHERE Authors = \"" + name + "\"";



Это сообщение отредактировал(а) bopoha - 9.5.2009, 22:13
PM MAIL WWW ICQ Skype GTalk   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
stab
mr.DUDA
Exception

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

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

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


 




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


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

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