|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
MySQL->Create Table(...) через делфи...
Ищу помощи...Значица необходима прога которая знает все комманды MySQL'a и свободно выполнять на удаленном сервере....Пробовал через SQLQuery,SQLtable...и другие компоненты со вкладки dbexpress....вообщем подключается, все норм, но не понимает команды create table(...),сreate database и тд....подскажите плз, если кто этим занимался...заранее спасибо!!
|
#2
|
||||
|
||||
libmysql в помощ... саму либу + юнит с функциями ищи на MySQL.ru
Added: Избавлю от поиска, с тебя +. http://www.mysql.ru/cgi-bin/download/DelphiMySQL.zip Оставайтесь хорошими людьми... VK id2634397, ds [at] phoenix [dot] dj |
#3
|
|||
|
|||
Этот архив я видел и принял к сведениям, спасибо...Я имел ввиду то... что при использовании стандартных компонентов для доступа к серверу есть ли возможность создания баз данных или хотя бы таблиц из делфи??...имея небольшие познания языка MySQL могу создать базы и таблицы через консоль, но мне необходимо чтобы программа сама этим занималась, без какого либо вмешательства пользователя...Существуют ли такие компоненты и какой у них синтаксис...
|
#4
|
|||
|
|||
Только что попробовал через 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
|
|||
|
|||
Новая загвоздка....
Ну я работал через dbExpress и MySQL 5.0...возможно из за версии какие то конфликты...вообщем, я все таки решил пользоваться тем архивом,но опять же встал ребром вопрос о безразмерности sql баз...при создании 1001 поля вылазит ошибка...ошибки в запросе быть не может, тк для создания 1000го поля запрос идентичен...Места на жестком достаточно(примерно 50Гб свободно)... ниже приведу код...
================================================== ======= Программы надо писать не задумываясь, иначе ведь и с ума сойти можно... |
#6
|
|||
|
|||
Сам код....не стал закидывать 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; вроде все скинул...=0 Программы надо писать не задумываясь, иначе ведь и с ума сойти можно... Последний раз редактировалось Admin, 18.08.2009 в 10:29. |
#7
|
|||
|
|||
Прошу простить меня за ламерство...ибо я не так давно работаю с мускулом и это мой первый опыт в реализации приложения клиент-сервер...
Программы надо писать не задумываясь, иначе ведь и с ума сойти можно... |
#8
|
|||
|
|||
roamer,прошу кинуть мне проект на мыло goth74@mail.ru
Программы надо писать не задумываясь, иначе ведь и с ума сойти можно... Последний раз редактировалось Arxa1L, 18.08.2009 в 13:18. |
#9
|
|||
|
|||
Отослал.
Но Вы должны понимать, что MySQL-5 и MySQL-3.23.58 - это несколько разные вещи. Т.е., может быть Вам придется повозиться. |
#10
|
|||
|
|||
Благодарю..=) p.s. еще пока не смотрел....дел навалило..
Программы надо писать не задумываясь, иначе ведь и с ума сойти можно... |