Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 24.05.2014, 20:50   #1
Алексей_2012
t45t
Участник клуба
 
Аватар для Алексей_2012
 
Регистрация: 20.03.2012
Сообщений: 1,849
По умолчанию mysql и делфи, исходники

Здравствуйте, скоро диплом, через 3 дня, а у меня кода по теме 0, так как занят был другими программами, если не сдам-отчисление, кто-нибудь может подкинуть пару примеров с созданием БД на mysql в делфи, цель такая: возможность сброса данных любого типа в БД, разграничение доступа и возможность просмотра файлов в бд, учителя помогли, сказали что в БД пути к файлам, по этим путям происходит скачивание файла из сети по адресу из пути к БД, в общем буду рад любой информации, а именно: формирование БД, загрузка файла на сервер (например народ яндекс), не судите строго за тему, создал в порыве отчаянья, и прошу не смеяться.
from dark to light)
Алексей_2012 вне форума Ответить с цитированием
Старый 24.05.2014, 21:53   #2
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию

Цитата:
скоро диплом, через 3 дня, а у меня кода по теме 0, так как занят был другими программами,
Тянешь на премию Дарвина.

Что значит "создание на mySQL в Delphi?".
Обычно так:
Тебе дают MS SQL Server, и БД(пустую), ты программно там плодишь таблицы и все вкусное и полезное.
Далее работаешь со всем этим.

Но можт быть и ещё проще:
Создаешь БД у себя, выгружаешь её в файл. Приносишь к преподу, импортируешь. Используешь.

Втыкаешь ADOConnection, настраиваешь провайдера к БД, связываешь c ним ADOQuery. Все, теперь на чистом SQL создаешь таблицы, поля и все прочее полезное.

После создания таблиц можно плодить ADOTable, биндить их с ADOConnection(указывать таблицы), параллельно плодить DataSource, биндить их с ADOTable/ADOQuery, далее плодить DBGrid'ы и линковать их с ADOQuery/DataSource/ADOTable в зависимости от того, сколько компонент должны иметь доступ к данным.

Qyery - основное средство взаимодействия с БД.

Последний раз редактировалось Человек_Борща; 24.05.2014 в 23:25.
Человек_Борща вне форума Ответить с цитированием
Старый 24.05.2014, 21:56   #3
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
скоро диплом, через 3 дня, а у меня кода по теме 0, так как занят был другими программами,
Нда уж... Бессонные студенческие ночи с энергетиком и кофеином
Эх ностальгия.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 24.05.2014, 22:15   #4
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию

Цитата:
Нда уж... Бессонные студенческие ночи с энергетиком и кофеином
Эх ностальгия.
Оно то да, сам так дипломную делал, но на самом деле это большая глупость.
И сил немеряно вбухаешь, и лес из бревен не заметишь, ну и оценка дипломной - как последствие.

Последний раз редактировалось Человек_Борща; 24.05.2014 в 22:22.
Человек_Борща вне форума Ответить с цитированием
Старый 25.05.2014, 01:08   #5
Алексей_2012
t45t
Участник клуба
 
Аватар для Алексей_2012
 
Регистрация: 20.03.2012
Сообщений: 1,849
По умолчанию

Да уж, не думаю что смогу это освоить за 2 дня (3 день-сдача) надо было все услиля прилагать к курсовой, а уж потом к программам, которые поднимают меня среди други студентов (с граммотами и почетами) эти грамоты мне не дадут ничего, даже в институт не возьмут, если главную курсовую не сдам, а аттестат только за 9 класс, так что прошу ссыль, ADOConnection в помощь когда знаешь ADOTable, а я то и умею что работать с файлами и папками и типизированными файлами, ну и с логикой немного, знаю алгоритмы есть, но их не найти без особых знаний, в общем с чего начать?
1) Создание формы авторизации можно осуществить через зашифрованный файл, на локальном диске, мне это проще, но это не дает гарантий, что например в коде ассемблера умные люди не заменят команду je, на jne и тогда любой пароль кроме верного подойдет, но это в последнюю очередь.

2) Далее требуется форма с полями ввода в БД, но БД создать надо. Это первое
И думаю главное с чего надо начать
3) Просмотр файлов в бд (список файлов, двойной щелчек по которым открывает этот файл, скачивая его, и запуская через shellexecute) но это мое мнение, в тз средства просмотре не указано

4) Загрузка в БД файлов любого типа (думаю в БД должна быть только одна таблица с соответствующими полями и пути к файлу, а в список загружается только имя файла и запуск по двойному щелчку, это сам могу, главное научиться работать с базой, вторник-дипломный день, и соответственно 4 года потрачено зря)

5) Надеюсь ничего не упустил, ребят, денег совсем нет, и поэтому прошу помочь мне, дать волшебного пинка, иначе обратился бы во фриланс, времени на чтение литературы не осталось, поэтому прошу найти исходники, в которых есть что мне надо, пробовал искать, но видимо плохо искал.

Ребят, выручайте пожалуйста, не судите строго и не смейтесь, заранее спасибо всем понимающим.
from dark to light)
Алексей_2012 вне форума Ответить с цитированием
Старый 25.05.2014, 10:26   #6
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
можно осуществить через зашифрованный файл
Цитата:
не дает гарантий, что например в коде ассемблера умные люди не заменят команду je, на jne и тогда любой пароль кроме верного подойдет
Боххмой, у тебя диплома горит а ты о такой мелочи думаешь?
Тебе сейчас нужно все сделать максимум по простому. Никаких выкрутасов. Иначе можешь просто не начинать и не идти на сдачу. И потом - ладно программы нет, но дипломная записка же есть? Вот по ней и осуществлять написание кода.
Или записки тоже нет?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 25.05.2014, 12:49   #7
Алексей_2012
t45t
Участник клуба
 
Аватар для Алексей_2012
 
Регистрация: 20.03.2012
Сообщений: 1,849
По умолчанию

Там в записке написано: СОздание электронного хранилища информации, все, так как задание особенное, а остальное все-одет рекомендации к FVoxPro, сколько запросов сделать, форм и т.д., а у меня задача сделать на делфи, совсем другая, а написали на этой записке так как шаблон уже есть, и переделывать им не хотелось(
from dark to light)
Алексей_2012 вне форума Ответить с цитированием
Старый 25.05.2014, 13:30   #8
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию

Ставишь MS SQL Server
Создаешь БД, создаешь таблицы:
Users: - Для авторизации
Поля:
UserName - строка VCHAR(255)
Password - строка VCHAR(40)
LastUsed - дата и время
LoginAttempts - int - кол-во попыток авторизации

Авторизация:
Окно: 2 LabeledEdit(логин/пароль), 2 кнопки(Войти, Выход)
При показе формы выполняешь:
Код:
SELECT COUNT(UserName) FROM USERS
Если ExecSQL > 0 и FieldByNum(0) > 0 то показываешь форму авторизации, иначе сразу даешь доступ к БД.

Авторизация:
При входе берешь логин "как есть" треммируешь, далее берешь пароль, тоже треммируешь, получаешь MD5 пароля далее выполняшь запрос:
Код:
SELECT COUNT(UserName) FROM USERS WHERE (Password = :PH) AND (UserName = :UN)
Подтавляешь в :PH - хешь пароля, :UN - имя юзера

ExecSQL должно быть > 0, FieldByNum(0) должно быть > 0, если одно из этих условий не выполняется, то ввели неверные учетные данные, делаешь UPDATE чтобы обновить поле LoginAttempts, если оно > 3 то выход из ПО, UPDATEэом сбросив LoginAttempts в 0. Можно ещё блокировку логина придумать но это долго.

Файлы в БД, дикость конечно. Но СУБД это умеет. Называется BLOB'ами. Просвящайся.
Соответственно таблица для этого варианта такая:
Files - Таблица
Поля:
DisplayName - CHAR(512) - отображаемое имя файла
FileName - VCHAR(512) - оригинальное имя файла
Size - Int64 - размер файла в байтах
Data - LONGBLOB - сам файл
From - VCHAR(255) - Откуда взят
Created - Дата и время - когда добавлен
LastAccess - последний доступ к файлу

Редактирование и добавление подразумевает форму из 2 LabeledEdit(Видимое имя файла, путь к файлу), 3 кнопки(Выбрать файл, ОК, Отмена)

Вариант преподов:
FileName - имя файла
URL - Ссылка на файл
SavedIn - куда сохранили
SaveDate - когда сохранили
AddedDate - когда добавили

Форму уже сам придумаешь....

По сути и все....
Тулбар с 3я кнопками, DBGrid, ADOTable, ADOConnection, DataSource
связываешь ADOTable с ADOConnection, указываешь таблицу Files, активируешь,
Связываешь DataSource с ADOTable.
Связываешь DBGrid с DataSource. Вуаля, Files в DBGrid.

Доступ к данным идет через DBGrid.DataSource.DataSet.<...>

ADOConnection, ADOQuery выносишь в DataModule, ставишь его первым в очереди создания...

Вот и весь проект.

Последний раз редактировалось Человек_Борща; 25.05.2014 в 13:34.
Человек_Борща вне форума Ответить с цитированием
Старый 25.05.2014, 13:59   #9
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Цитата:
Ставишь MS SQL Server
MS SQL Server<>MySQL
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 25.05.2014, 16:38   #10
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию

Цитата:
MS SQL Server<>MySQL
Действительно. Мой косяк :/
Но сути не меняет.
Человек_Борща вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Исходники и примеры MySQL + Delphi Turbine БД в Delphi 0 16.03.2011 13:01
Для какой версии делфи эти исходники... Excellion Общие вопросы Delphi 9 04.01.2011 03:23
Поделитесь пожалуйсто ссылкой на сайт где можно скачать исходники пасьянсов на делфи Warfvare Софт 6 24.07.2010 10:29
Поделитесь пожалуйсто ссылкой на сайт где можно скачать исходники пасьянсов на делфи Warfvare Помощь студентам 0 17.06.2010 17:59