Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.93/15: Рейтинг темы: голосов - 15, средняя оценка - 4.93
delpix.ru
 Аватар для Delpix
19 / 19 / 3
Регистрация: 06.05.2011
Сообщений: 235

Функция удаления из базы данных

02.06.2011, 21:59. Показов 3171. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Вот рабочая функция удаления моего друга:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
void del(int n)
{
        int d,i;
        pacient *db;
        db=new pacient[n];
        pacient *temp; 
        temp=new pacient[n]; 
        d=-1;
        while(d<0||d>n)
        {
                cout<<"Введите № строки которую хотите удалить: "; cin>>d;
                d--;
                if(d<0||d>n) cout<<"Ошибка!!! Такой строки не существует..."<<endl;
        }
        ifstream fin("pacient.txt", ios::in);
        for(i=0;i<n;i++)
        {
                fin>>db[i].familiy>>db[i].ima>>db[i].otchestvo>>db[i].diagnoz>>db[i].sostoynie>>db[i].lechashiy_vrach>>db[i].nomer>>db[i].nomer_palati>>db[i].god>>db[i].tip_otdelenij>>db[i].dom_lech;
        }
        fin.close();
        for(i=0;i<d;i++) temp[i]=db[i];
        for(i=d+1;i<n;i++) temp[i-1]=db[i];
        delete []db;
        n--;
        ofstream fout("pacient.txt", ios::out);
        fout.clear();
        for(i=0;i<n;i++)
        {
                fout<<" "<<temp[i].familiy<<" "<<temp[i].ima<<" "<<temp[i].otchestvo<<" "<<temp[i].diagnoz;
                fout<<" "<<temp[i].sostoynie<<" "<<temp[i].lechashiy_vrach<<" "<<temp[i].nomer<<" "<<temp[i].nomer_palati<<" "<<temp[i].god<<" "<<temp[i].tip_otdelenij<<" "<<temp[i].dom_lech;
        }
        fout.close();
}
Вот моя, неработающая, с небольшими изменениями:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
void del(int n)
{
        int d,i;
        Abbase *z5;
        z5=new Abbase[n];
        Abbase *fio; 
        fio=new Abbase[n]; 
        d=-1;
        while(d<0||d>n)
        {
                cout<<"Введите № строки которую хотите удалить: "; cin>>d;
                d--;
                if(d<0||d>n) cout<<"Ошибка!!! Такой строки не существует..."<<endl;
        }
        ifstream fin("base.txt", ios::in);
        for(i=0;i<n;i++)
        {
                fin>>z5.number>>z5.family>>z5.f_name>>z5.l_name>>z5.gr>>z5.st;  
        }
        fin.close();
        for(i=0;i<d;i++)fio[i]=z5[i];
        for(i=d+1;i<n;i++) fio[i-1]=z5[i];
        delete []z5;
        n--;
        ofstream fout("base.txt", ios::out);
        fout.clear();
        for(i=0;i<n;i++)
        {
              fout <<endl<<z5.number<<" "<<z5.family<<" "<<z5.f_name<<" "<<z5.l_name<<" "<<z5.gr<<" "<<z5.st;
        }
        fout.close();
}
У меня структура Abbase у друга pacient
В чем проблема?Компилятор выдает:

1>c:\users\user\documents\visual studio 2010\projects\abbase 0.36\abbase 0.36\struct.h(176): error C2228: выражение слева от ".number" должно представлять класс, структуру или объединение
1> тип: Abbase *
1> возможно, имеется в виду "->"
1>c:\users\user\documents\visual studio 2010\projects\abbase 0.36\abbase 0.36\struct.h(176): error C2228: выражение слева от ".family" должно представлять класс, структуру или объединение
1> тип: Abbase *
1> возможно, имеется в виду "->"
1>c:\users\user\documents\visual studio 2010\projects\abbase 0.36\abbase 0.36\struct.h(176): error C2228: выражение слева от ".f_name" должно представлять класс, структуру или объединение
1> тип: Abbase *
1> возможно, имеется в виду "->"
1>c:\users\user\documents\visual studio 2010\projects\abbase 0.36\abbase 0.36\struct.h(176): error C2228: выражение слева от ".l_name" должно представлять класс, структуру или объединение
1> тип: Abbase *
1> возможно, имеется в виду "->"
1>c:\users\user\documents\visual studio 2010\projects\abbase 0.36\abbase 0.36\struct.h(176): error C2228: выражение слева от ".gr" должно представлять класс, структуру или объединение
1> тип: Abbase *
1> возможно, имеется в виду "->"
1>c:\users\user\documents\visual studio 2010\projects\abbase 0.36\abbase 0.36\struct.h(176): error C2228: выражение слева от ".st" должно представлять класс, структуру или объединение
1> тип: Abbase *
1> возможно, имеется в виду "->"
1>c:\users\user\documents\visual studio 2010\projects\abbase 0.36\abbase 0.36\struct.h(187): error C2228: выражение слева от ".number" должно представлять класс, структуру или объединение
1> тип: Abbase *
1> возможно, имеется в виду "->"
1>c:\users\user\documents\visual studio 2010\projects\abbase 0.36\abbase 0.36\struct.h(187): error C2228: выражение слева от ".family" должно представлять класс, структуру или объединение
1> тип: Abbase *
1> возможно, имеется в виду "->"
1>c:\users\user\documents\visual studio 2010\projects\abbase 0.36\abbase 0.36\struct.h(187): error C2228: выражение слева от ".f_name" должно представлять класс, структуру или объединение
1> тип: Abbase *
1> возможно, имеется в виду "->"
1>c:\users\user\documents\visual studio 2010\projects\abbase 0.36\abbase 0.36\struct.h(187): error C2228: выражение слева от ".l_name" должно представлять класс, структуру или объединение
1> тип: Abbase *
1> возможно, имеется в виду "->"
1>c:\users\user\documents\visual studio 2010\projects\abbase 0.36\abbase 0.36\struct.h(187): error C2228: выражение слева от ".gr" должно представлять класс, структуру или объединение
1> тип: Abbase *
1> возможно, имеется в виду "->"
1>c:\users\user\documents\visual studio 2010\projects\abbase 0.36\abbase 0.36\struct.h(187): error C2228: выражение слева от ".st" должно представлять класс, структуру или объединение
1> тип: Abbase *
1> возможно, имеется в виду "->"
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
02.06.2011, 21:59
Ответы с готовыми решениями:

Функция удаления из базы данных (Найти ошибки)
У меня есть функция удаления строки из базы данных void Delete(int n) { int d,i; Abbase *db; system (&quot;cls&quot;); ...

Алгоритм удаления записи из базы данных
У меня есть алгоритм записи в файл: void Add(Abbase&amp; d, int&amp; ch) { system (&quot;cls&quot;); ofstream fout(&quot;base.txt&quot;,ios::app); ...

Функция удаления из базы
хай всем, что то у меня голова уже не варит $mysqli = $db-&gt;query(&quot;DELETE FROM `$table` WHERE `name` = '$wh'&quot;); ...

2
49 / 49 / 14
Регистрация: 08.04.2011
Сообщений: 124
02.06.2011, 22:06
C++
1
 fin>>db[i].familiy>>db[i].ima>>db[i].otchestvo>>db[i].diagnoz>>db[i].sostoynie>>db[i].lechashiy_vrach>>db[i].nomer>>db[i].nomer_palati>>db[i].god>>db[i].tip_otdelenij>>db[i].dom_lech;
C++
1
 fin>>z5.number>>z5.family>>z5.f_name>>z5.l_name>>z5.gr>>z5.st;
Отличия не находите,
У друга db[i] - массив
У вас z5 - не массив
И кстати если у вас классы разные то покажите их (Abbase , pacient), ошибки похоже из-за неправильного обращения к указателям, т.е место "." надо "->"
0
delpix.ru
 Аватар для Delpix
19 / 19 / 3
Регистрация: 06.05.2011
Сообщений: 235
02.06.2011, 22:30  [ТС]
Цитата Сообщение от kjahert Посмотреть сообщение
C++
1
 fin>>db[i].familiy>>db[i].ima>>db[i].otchestvo>>db[i].diagnoz>>db[i].sostoynie>>db[i].lechashiy_vrach>>db[i].nomer>>db[i].nomer_palati>>db[i].god>>db[i].tip_otdelenij>>db[i].dom_lech;
C++
1
 fin>>z5.number>>z5.family>>z5.f_name>>z5.l_name>>z5.gr>>z5.st;
Отличия не находите,
У друга db[i] - массив
У вас z5 - не массив
И кстати если у вас классы разные то покажите их (Abbase , pacient), ошибки похоже из-за неправильного обращения к указателям, т.е место "." надо "->"
Простите, тупанул, мой косяк.
Сделал массив, ошибок не выдает, но прога работает не правильно. Никакой кроме первой строки не находит, а если выбрать первую строку то удаляет все содержимое базы.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
02.06.2011, 22:30
Помогаю со студенческими работами здесь

Почему не происходит удаления из базы данных?
в чем я допустил ошибку подскажите, почему не происходит удаления из базы данных? $data = date('d.m.Y H:i'); // дата системная ...

Код для удаления записи из базы данных
/////////////////////////////////////////////////////////////////////////////////// 1 часть кода string a =...

После удаления таблицы не уменьшается размер базы данных
Добрый день. Microsoft SQL Server 2008. С базы данных через SQL Server Management Studio была удалена таблица (первоначально по данной...

После удаления базы данных из SQL Server не могу подключится
В Managment Studio удалил добавленные мной базы данных. Теперь не могу подключится к серверу. Ругается: &quot;Невозможно открыть...

TableAdapter для удаления строки из базы данных требует все поля
Здравствуйте, появилось пару вопросов относительно работы с базой данных (ms sql). Первый: благодаря DataSet, BindingSource и...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru