Форум программистов, компьютерный форум, киберфорум
C#: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.64/11: Рейтинг темы: голосов - 11, средняя оценка - 4.64
1 / 1 / 0
Регистрация: 11.05.2011
Сообщений: 12
.NET 4.x

Добавление записей!

01.06.2011, 12:36. Показов 2265. Ответов 14
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Почему не всегда добавляються или удлаляються записи в базе данных?
Проект прикреплён! Может я что не так пишу! Подскажите пожалуйсто!
Вложения
Тип файла: rar ISSM.rar (1.23 Мб, 28 просмотров)
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
01.06.2011, 12:36
Ответы с готовыми решениями:

Добавление записей в БД
Ребят, добавляю запись в БД access. Добавляется по факту только первый столбец FirstName, остальные никак не добавляются. В чем причина? ...

Добавление записей в БД
У меня такая проблема. Создала форму. К ней прикрепила таблицу. Ввожу данные, нажимаю сохранить. В коде о сохранении организовано...

Добавление записей в Access
В Access таблица, содержащая 4 столбца ФИО, Дата рождения, Адрес, Телефон. Необходимо через textBox1.Text, dateTimePicker1.Value,...

14
 Аватар для Terion
271 / 203 / 13
Регистрация: 18.06.2010
Сообщений: 491
02.06.2011, 12:46
во-первых, пути надо делать относительными,а не абсолютными
во-вторых, ловить эксепшены.ибо ошибка возникает, но никто ее не поймал.а в ней написано, что было не так и пачиму сломалося
в-третьих, все не смотрела, но в случае удаления исполнителя у вас просто неправильный запрос. Code - это число, а вы в запросе его передаете как строку.
в-четвертых, что это такое? cmd.CommandText = "Delete from Albums where (Code=" + textBox1 + " )";
textBox1 -это контрол.а вот его содержимое - это textBox1.Text

ну дальше по аналогии пересмотрите все функции))
1
1 / 1 / 0
Регистрация: 11.05.2011
Сообщений: 12
03.06.2011, 02:13  [ТС]
cmd.CommandText = "Delete from Albums where (Code=" + textBox1 + " )";
так как в таблице ключевое поле сод то я и удаляю только код, такким образом удаляеться и вся запись целиком!
Как сделать пути относительными?
второй пунт я вообще не понял)
у меня самая большая проблема в том что в альбомах запись не добавляеться, а в исполнителях добавляеться, делал всё одинаково , изза чего такое может быть?
0
33 / 33 / 2
Регистрация: 24.09.2010
Сообщений: 140
03.06.2011, 03:57
Из за того что имена полей в запросе должны быть в таких кавычках: INSERT INTO `albums` (`Code`, `Album`, `Ispolnitel`, `Namemusik`, `Time`, `Link`)
Ещё в строке подключения измени: Data Source=|DataDirectory|\database.mdb

Добавлено через 20 минут
Это, так должно быть: cmd.CommandText = "Delete from `Albums` where (`Code`=" + textBox1.Text + ")";
0
1 / 1 / 0
Регистрация: 11.05.2011
Сообщений: 12
03.06.2011, 11:02  [ТС]
это полчаеться что надо все названия и таблиц и колонок кидать в ещё одни скобки, спасибо!
Для первой работы совсем не плохо)
1
 Аватар для Terion
271 / 203 / 13
Регистрация: 18.06.2010
Сообщений: 491
03.06.2011, 11:23
Цитата Сообщение от Nwq Посмотреть сообщение
Из за того что имена полей в запросе должны быть в таких кавычках: INSERT INTO `albums` (`Code`, `Album`, `Ispolnitel`, `Namemusik`, `Time`, `Link`)
Ещё в строке подключения измени: Data Source=|DataDirectory|\database.mdb

Добавлено через 20 минут
Это, так должно быть: cmd.CommandText = "Delete from `Albums` where (`Code`=" + textBox1.Text + ")";
кавычки тут вообще не причем,не путайте человека.и вообще, во избежание проблем лучше ставить [],а не кавычки.

Disney, изучайте синтаксис sql. основная проблема у вас в том, что вы передаете неправильные значения. на пальцах: code у вас счетчик и имеет числовой формат, а вы пытаетесь передать туда число вот таким образом Code='1' (поясняю, у вас значение в кавычках, что делает его строкой,а не числом. отсюда и ошибка)
отсюда вытекает мой пункт 2 - вы не ловите исключения. ловить их надо через try/catch. у вас в итоге получилось, что выскочило исключение, вы его не ловили, прога этого не заметила и тупо встала. вот и все.
по поводу пункта 4 - следите за тем, что передаете. строкой cmd.CommandText = "Delete from Albums where (Code=" + textBox1 + " )"; вы не значение из текстбокса 1 туда передали, а сам текстбок.

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

относительный путь - это путь, который не однозначный. каким он у вас должен быть - решать вам. если база всегда в стартовой папке - можно так Application.StartupPath+"\\mybase.mdb"
1
33 / 33 / 2
Регистрация: 24.09.2010
Сообщений: 140
03.06.2011, 12:09
Цитата Сообщение от Terion Посмотреть сообщение
кавычки тут вообще не причем,не путайте человека.
Я никогда не говорю того чего не знаю, не разобралась и отвечаешь.

Добавлено через 42 минуты
Цитата Сообщение от Terion Посмотреть сообщение
не добавляется у вас по той же причине. code - это счетчик!он крутится сам. в него нельзя записать,а вы пытаетесь.
В него можно писать.
0
 Аватар для Terion
271 / 203 / 13
Регистрация: 18.06.2010
Сообщений: 491
03.06.2011, 18:03
Цитата Сообщение от Nwq Посмотреть сообщение
Я никогда не говорю того чего не знаю, не разобралась и отвечаешь.

Добавлено через 42 минуты


В него можно писать.
ну так замените эту строку cmd.CommandText = "Insert into albums (Code, Album, Ispolnitel, Namemusik, Time, Link ) values ('" + addcodealbumtb.Text + "','" + addalbumtb.Text + "','" + addispalbtb.Text + "','" + namemusiktb.Text + "','" + timetb.Text + "','" + licktb.Text + "')";

строкой cmd.CommandText = "Insert into albums (Album, Ispolnitel, Namemusik, Time, Link ) values ('" + addalbumtb.Text + "','" + addispalbtb.Text + "','" + namemusiktb.Text + "','" + timetb.Text + "','" + licktb.Text + "')";

не добавляя никаких кавычек.
работать не будет все равно, т.к. time надо передавать опять же не как строку, т.к. в базе это дата-время. а вот в исполнителях нормально работает.
0
33 / 33 / 2
Регистрация: 24.09.2010
Сообщений: 140
03.06.2011, 18:09
Цитата Сообщение от Terion Посмотреть сообщение
ну так замените эту строку cmd.CommandText = "Insert into albums (Code, Album, Ispolnitel, Namemusik, Time, Link ) values ('" + addcodealbumtb.Text + "','" + addalbumtb.Text + "','" + addispalbtb.Text + "','" + namemusiktb.Text + "','" + timetb.Text + "','" + licktb.Text + "')";

строкой cmd.CommandText = "Insert into albums (Album, Ispolnitel, Namemusik, Time, Link ) values ('" + addalbumtb.Text + "','" + addispalbtb.Text + "','" + namemusiktb.Text + "','" + timetb.Text + "','" + licktb.Text + "')";

не добавляя никаких кавычек.
работать не будет все равно, т.к. time надо передавать опять же не как строку, т.к. в базе это дата-время. а вот в исполнителях нормально работает.
Я вообще то проверял, всё работает и без ошибок.
1
1 / 1 / 0
Регистрация: 11.05.2011
Сообщений: 12
03.06.2011, 18:47  [ТС]
Добавляеться и работает с вариантом кавычек хорошо, в базе отображаеться отлично, и у меня в самой программи счётчик работает как то не правильно если создаёться новая запись напрямую из таблицы счётчик идёт в минус!
Можно както сделать чтобы формы были в центре экрана при появлении, а не с краю?
Можно ли создать файл справки в визуал студио?
0
33 / 33 / 2
Регистрация: 24.09.2010
Сообщений: 140
03.06.2011, 19:08
Счётчик в минус это для того чтоб отличать записи которые уже в базе, от записей которые ещё нет, при добавлении в базу это число изменится. Чтоб форма по середине была StartPosition = CenterScreen
0
 Аватар для Terion
271 / 203 / 13
Регистрация: 18.06.2010
Сообщений: 491
03.06.2011, 23:48
Цитата Сообщение от Nwq Посмотреть сообщение
Я вообще то проверял, всё работает и без ошибок.
а я и не говорю, что не работает. наверно, мы не совсем правильно друг друга поняли.
я имела в виду, что в интерпретации кода от топикстартера все проблемы идут от несоблюдения типов передаваемых параметров в sql запросе (попытках запихать в инт строку, в дату - строку и тд). насколько идеологически верно заключать все в тильды - не знаю. по-мойму, сначала уж надо научиться понимать суть работы sql-запроса, а уж потом читерить тильдами)
0
33 / 33 / 2
Регистрация: 24.09.2010
Сообщений: 140
03.06.2011, 23:55
Ещё раз говорю, ошибка возникала именно из за того что кавычек этих не было, а параметры хоть и заданы были не совсем корректно, но к ошибке не приводили. И к тому же Disney сам подтвердил что с ними заработало.
0
1 / 1 / 0
Регистрация: 11.05.2011
Сообщений: 12
04.06.2011, 00:16  [ТС]
Цитата Сообщение от Nwq Посмотреть сообщение
Чтоб форма по середине была StartPosition = CenterScreen
form1 form1 = new form1();
form1.StartPosition = CenterScreen();

это так надо записывать? Если да то CenterScreen выдаёт ошиьку что нехватает пространства имён! Можете подсказать что нужно подкллючить?

Terion и Nwq мне кажеться вы говорите об одних и тех же вещах, только по разному их реализуете, если читать что пишет Terion, то получаеться что я не осознаю основ sql и немогу с токи зрения формирования запроса всё правильно реализовать, а Nwq отходит от правильности и даёт чёткую работу независимо от правил!
0
33 / 33 / 2
Регистрация: 24.09.2010
Сообщений: 140
04.06.2011, 00:32
Цитата Сообщение от Disney Посмотреть сообщение
form1 form1 = new form1();
form1.StartPosition = CenterScreen();

это так надо записывать? Если да то CenterScreen выдаёт ошиьку что нехватает пространства имён! Можете подсказать что нужно подкллючить?

Terion и Nwq мне кажеться вы говорите об одних и тех же вещах, только по разному их реализуете, если читать что пишет Terion, то получаеться что я не осознаю основ sql и немогу с токи зрения формирования запроса всё правильно реализовать, а Nwq отходит от правильности и даёт чёткую работу независимо от правил!
C#
1
    form1.StartPosition = FormStartPosition.CenterScreen;
Как раз правильно это заключать имена полей в `` или в [].

Добавлено через 2 минуты
Или StartPosition выставь в свойствах формы.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
04.06.2011, 00:32
Помогаю со студенческими работами здесь

Добавление записей в БД Access
Здравствуйте! Есть БД на акцессе, к датагрид привязана таблица. Как добавлять данные из текстбоксов в таблицу? Прикладываю проект......

Добавление записей в таблицу
SqlConnection connection1 = new SqlConnection("Data Source=.\\SQLEXPRESS;AttachDbFilename=C:\\bd\\bdtest.mdf;Integrated...

добавление, изменение записей БД
Есть клиент-серверное приложение, есть доступ к БД осуществляется вот так List<DocTransport> GetAllDoc(); ...

Добавление записей в базу
sOTRYDNIKTableAdapter.Connection.Open(); sOTRYDNIKTableAdapter.Adapter.InsertCommand.Parameters.Value = textBox1.Text; ...

Добавление записей по нажатию кнопки
Подскажите в чем ошибка. Я хочу, чтоб по нажатию кнопки текст из textBox переходил в базу данных. Как можно это реализовать?? using...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Новые блоги и статьи
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2. В качестве источника данных. . .
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер Написал заготовку: dotnet new console --aot -o UrlHandler var items = args. Split(":"); var tag = items; var id = items; var executable = args;. . .
Отправка уведомления на почту при создании или изменении элементов справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной записи электронной. . .
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений. 9TO2GP2bpX4 a42b81fb172ffc12ca589c7898261ccb/ https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/ Слева синяя линия -. . .
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru