Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Базы данных
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 11.08.2009, 13:33
Arxa1L Arxa1L вне форума
Прохожий
 
Регистрация: 11.08.2009
Адрес: Екатеринбург
Сообщения: 7
Репутация: 10
Восклицание MySQL->Create Table(...) через делфи...

Ищу помощи...Значица необходима прога которая знает все комманды MySQL'a и свободно выполнять на удаленном сервере....Пробовал через SQLQuery,SQLtable...и другие компоненты со вкладки dbexpress....вообщем подключается, все норм, но не понимает команды create table(...),сreate database и тд....подскажите плз, если кто этим занимался...заранее спасибо!!
Ответить с цитированием
  #2  
Старый 11.08.2009, 14:18
Аватар для PhoeniX
PhoeniX PhoeniX вне форума
Always hardcore!
 
Регистрация: 04.03.2009
Адрес: СПб
Сообщения: 3,239
Версия Delphi: GCC/FPC/FASM
Репутация: 62149
По умолчанию

libmysql в помощ... саму либу + юнит с функциями ищи на MySQL.ru

Added:
Избавлю от поиска, с тебя +.
http://www.mysql.ru/cgi-bin/download/DelphiMySQL.zip
__________________
Оставайтесь хорошими людьми...
VK id2634397, ds [at] phoenix [dot] dj
Ответить с цитированием
  #3  
Старый 15.08.2009, 20:39
Arxa1L Arxa1L вне форума
Прохожий
 
Регистрация: 11.08.2009
Адрес: Екатеринбург
Сообщения: 7
Репутация: 10
По умолчанию

Этот архив я видел и принял к сведениям, спасибо...Я имел ввиду то... что при использовании стандартных компонентов для доступа к серверу есть ли возможность создания баз данных или хотя бы таблиц из делфи??...имея небольшие познания языка MySQL могу создать базы и таблицы через консоль, но мне необходимо чтобы программа сама этим занималась, без какого либо вмешательства пользователя...Существуют ли такие компоненты и какой у них синтаксис...
Ответить с цитированием
  #4  
Старый 16.08.2009, 23:39
roamer roamer вне форума
Активный
 
Регистрация: 15.04.2009
Сообщения: 369
Репутация: 93
По умолчанию

Только что попробовал через BDE5 (ODBC) применительно MySQL 3.23.58 win32 выполнить с помощью TQuery вот такую команду :
Код:
CREATE TABLE L_PROPNUMBER_TOP (ID_THIS INTEGER NOT NULL,
        ITS_GLOBAL INTEGER,
        ID_SYSTEM INTEGER,
        NUMPP INTEGER,
        NAME_MAX VARCHAR(200),
        MNEMO_CODE VARCHAR(32),
        DATE_CREATE DATE,
        DATE_UPDATE DATE,
PRIMARY KEY (ID_THIS))

Все прошло.

А база данных создается просто :
В каталоге "data", где все базы данных MySQL, надо создать подкаталог - это и будет имя новой базы данных.
Ответить с цитированием
  #5  
Старый 17.08.2009, 22:23
Arxa1L Arxa1L вне форума
Прохожий
 
Регистрация: 11.08.2009
Адрес: Екатеринбург
Сообщения: 7
Репутация: 10
Печаль Новая загвоздка....

Ну я работал через dbExpress и MySQL 5.0...возможно из за версии какие то конфликты...вообщем, я все таки решил пользоваться тем архивом,но опять же встал ребром вопрос о безразмерности sql баз...при создании 1001 поля вылазит ошибка...ошибки в запросе быть не может, тк для создания 1000го поля запрос идентичен...Места на жестком достаточно(примерно 50Гб свободно)... ниже приведу код...

================================================== =======
__________________
Программы надо писать не задумываясь, иначе ведь и с ума сойти можно...
Ответить с цитированием
  #6  
Старый 17.08.2009, 22:33
Arxa1L Arxa1L вне форума
Прохожий
 
Регистрация: 11.08.2009
Адрес: Екатеринбург
Сообщения: 7
Репутация: 10
Печаль Сам код....не стал закидывать uses и тп..

Код:
var
  F1: TF1;
  mysqlrec: mysql; //Global mysql struct
  connected: Integer; 
  n: integer;
  p0: integer; 

procedure connectserv;
begin

   //Connect to server
     mysql_connect(@mysqlrec, PChar(f1.edtHostname.Text), PChar(f1.edtUsername.Text), PChar(f1.edtPasswd.Text));
     if mysqlrec._net.last_errno = 0 then
      begin
    ShowMessage ('Successfully connected to server');
      connected:= 1; //keep track of connection
      end
     else
      ShowMessage ('Сервер с БД недоступен');
end;

procedure connectdb;
var
   db: String;
   retval: Integer;
begin
     db:= f1.edtDatabase.Text;
     retval:= mysql_select_db(@mysqlrec, PChar(db));
     if retval <> 0 then
        ShowMessage('Error attaching to: ' + db)
     else
         begin
       ShowMessage('Successfully attached to ' + db);
         end;
end;

procedure _query(query:string);
var
presults: pmysql_res; //results structure *pointer
begin
presults:= nil;
     try
     mysql_query(@mysqlrec, PChar(query)); //Send Query to server
     finally
         mysql_free_result(presults); //release the stored results from memory
     end;
end;

procedure TF1.FormCreate(Sender: TObject);
begin
connectserv;
connectdb;
end;

procedure TF1.FormDestroy(Sender: TObject);
begin
     mysql_close(@mysqlrec);
end;



procedure TF1.Button1Click(Sender: TObject);
var i:integer;
s:string;
begin
//тут создается таблица и 2 начальных столбца
_query('create table '+table+' (func int unsigned auto_increment,a1 int(1) DEFAULT 0,primary key (func))');
_query('insert into '+table+' (a1) values (0)'); 
//само создание столбцов и строк
for i:=2 to (p0-1) do
begin
_query('alter table '+table+' add column a'+inttostr(i)+' int(1) DEFAULT 0 after a'+inttostr(i-1));
_query('insert into '+table+' (a1) values (0)');
end;
//добавление последней строки
_query('insert into '+table+' (a1) values (0)');
end;
Admin: Пользуемся тегами, иначе последуют санкции!

вроде все скинул...=0
__________________
Программы надо писать не задумываясь, иначе ведь и с ума сойти можно...

Последний раз редактировалось Admin, 18.08.2009 в 10:29.
Ответить с цитированием
  #7  
Старый 17.08.2009, 22:35
Arxa1L Arxa1L вне форума
Прохожий
 
Регистрация: 11.08.2009
Адрес: Екатеринбург
Сообщения: 7
Репутация: 10
По умолчанию

Прошу простить меня за ламерство...ибо я не так давно работаю с мускулом и это мой первый опыт в реализации приложения клиент-сервер...
__________________
Программы надо писать не задумываясь, иначе ведь и с ума сойти можно...
Ответить с цитированием
  #8  
Старый 18.08.2009, 13:09
Arxa1L Arxa1L вне форума
Прохожий
 
Регистрация: 11.08.2009
Адрес: Екатеринбург
Сообщения: 7
Репутация: 10
По умолчанию

roamer,прошу кинуть мне проект на мыло goth74@mail.ru
__________________
Программы надо писать не задумываясь, иначе ведь и с ума сойти можно...

Последний раз редактировалось Arxa1L, 18.08.2009 в 13:18.
Ответить с цитированием
  #9  
Старый 18.08.2009, 18:42
roamer roamer вне форума
Активный
 
Регистрация: 15.04.2009
Сообщения: 369
Репутация: 93
По умолчанию

Отослал.
Но Вы должны понимать, что MySQL-5 и MySQL-3.23.58 - это несколько разные вещи.
Т.е., может быть Вам придется повозиться.
Ответить с цитированием
  #10  
Старый 19.08.2009, 21:32
Arxa1L Arxa1L вне форума
Прохожий
 
Регистрация: 11.08.2009
Адрес: Екатеринбург
Сообщения: 7
Репутация: 10
По умолчанию

Благодарю..=) p.s. еще пока не смотрел....дел навалило..
__________________
Программы надо писать не задумываясь, иначе ведь и с ума сойти можно...
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 16:22.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter