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

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

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 23.06.2009, 16:30   #1
ToLeG
Пользователь
 
Регистрация: 12.09.2008
Сообщений: 37
По умолчанию Mysql + Delphi

Здравствуйте! В делфи я полный "0". Мне нужно подключить базу mysql к delphi, с возможностью редактирования (добавление, удаление, изменение), но я совершенно не представляю как это сделать, поиски по нету ни к чему не привели. Расскажите пожалуйста как это сделать, подробно. Может кто примеры выложит. Заранее спасибо.

Delphi 7
Mysql 5.1.35.
ToLeG вне форума Ответить с цитированием
Старый 25.06.2009, 13:26   #2
Levsha100
Заблокирован
Старожил
 
Регистрация: 20.07.2008
Сообщений: 4,032
По умолчанию

Вот
http://programmersforum.ru/showpost....46&postcount=7
Levsha100 вне форума Ответить с цитированием
Старый 25.06.2009, 14:50   #3
ToLeG
Пользователь
 
Регистрация: 12.09.2008
Сообщений: 37
По умолчанию

Вот вроде бы разобрался.. Все работает Запросы выполняет.. Только когда пытаюсь сделать выборку возращает пустые строки. Хотя
в "MySQL Command Line Client" все нормально отображается и все строки заполнены. помогите пожалуйста.


procedure TForm1.btnCreateDBClick(Sender: TObject);
var
I: Integer;
groups: IMySQLQuery;
query_result: IMySQLQuery;
ListItem: TListItem;
Data: PGroupData;
begin
lInfo.Caption := '';

//Создаем базу данных
if MySQL.ExecSQL('CREATE DATABASE ' + eDB.Text + ';') then
begin
MySQL.Database := eDB.Text;
if MySQL.Database <> eDB.Text then
begin
ShowMySQLError;
Exit;
end;
MySQL.ExecSQL('SET CHARSET cp1251');
end;
//Создаем таблицу
if not MySQL.ExecSQL('CREATE TABLE IF NOT EXISTS list(id TINYINT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,name VARCHAR(25)) ENGINE = MYISAM CHARACTER SET cp1251 COLLATE cp1251_general_ci;')
then
begin
ShowMySQLError;
Exit;
end;

if not MySQL.ExecSQL('insert into list (name) values ("First");') then
begin
ShowMySQLError;
Exit;
end;

//Получаем данные
query_result := MySQL.Query('select * from list;');
if query_result = nil then
begin
ShowMySQLError;
Exit;
end;
while query_result.FetchRow do
begin
ListItem := lvGroups.Items.Add;
ListItem.Caption := query_result.ValueByName['name'];
New(Data);
Data.id := query_result.ValueByName['id'];
ListItem.Data := Data;
end;
end;
ToLeG вне форума Ответить с цитированием
Старый 26.06.2009, 11:06   #4
ToLeG
Пользователь
 
Регистрация: 12.09.2008
Сообщений: 37
По умолчанию

Так. Ладно. С этим тоже разобрался. Другой вопрос: Если вносить в базу значения русскими буквами, то когда эти значения получаешь вместо букв знаки вопроса - "?"... Как решить?
ToLeG вне форума Ответить с цитированием
Старый 26.06.2009, 11:11   #5
S@fer
Форумчанин
 
Аватар для S@fer
 
Регистрация: 29.01.2009
Сообщений: 411
По умолчанию

Проблема в кодировке, посмотри эти темы:
http://www.programmersforum.ru/showt...F0%EE%E2%EA%E0
http://www.programmersforum.ru/showt...F0%EE%E2%EA%E0
S@fer вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
mySQL+DELPHI от и до shuhermayer SQL, базы данных 21 20.10.2011 21:22
Delphi+MySQL Dul БД в Delphi 2 15.05.2009 15:01
Delphi+MySQL Cabyrc БД в Delphi 2 02.04.2009 09:24
MySQL+Delphi Toxa Общие вопросы Delphi 3 23.01.2007 18:24