Какими еще клиентами можно соединиться к базе данных Mysql, а то в этой командной строке неудобно работать. Пробовал с помощью FlameRobin, не получается.
» InterBase и FireBird: вопросы по работе и их решение
Omsk
Темой не ошиблись?
Темой не ошиблись?
Omsk
а при чем тут MySql ? Топик называется Interbase и Firebird
а при чем тут MySql ? Топик называется Interbase и Firebird
Я ведь не смог клиентом Firebird подсоединиться, вот и решил тут задать вопрос
Omsk
Клиентом Firebird к серверу MySQL? Вы никакого противоречия не замечаете?
Клиентом Firebird к серверу MySQL? Вы никакого противоречия не замечаете?
Цитата:
Я ведь не смог клиентом Firebird подсоединиться, вот и решил тут задать вопрос
Просто удивительно, что у тебя не получилось. Может для разнообразия стоило попробовать клиент MySQL ?
Нашел уже клиентов для Mysql
FB 2.1-2.5. Можно ли использовать проедуры с параметрами в Select и как
В параметр необходимо передать ключевое поле из селективной таблицы
Пример
Select ID, Процедура(ID) From users
В параметр необходимо передать ключевое поле из селективной таблицы
Пример
Select ID, Процедура(ID) From users
RedPromo
Select ID, (Select Result1 from Процедура(ID)) From users
Select ID, (Select Result1 from Процедура(ID)) From users
RedPromo
по моему еще так можно
select field1, field2, возвращаемый_процедурой_значение
from table join имя_проц(параметры) on 1=1
по моему еще так можно
select field1, field2, возвращаемый_процедурой_значение
from table join имя_проц(параметры) on 1=1
Знатоки, помогите, пожалуйста найти ошибку в коде.
Использую компоненты из пакета IbDac для доступа к базе Firebird 2.5
Нужно создать программно новую базу и создать в ней таблицы и т.д.
Проблема - при выполнении запроса - ошибка, хотя этот же текст по одной строке выполняется без проблем, весь текст без проблем выполняется в IBExpert'e
[more=Код.]
//---------------------------------------------------------- создание SQLText:
function CreateSQLText:string;
begin
Result:=
'CREATE DOMAIN D_FLOAT AS FLOAT DEFAULT 0.00; '+
'CREATE DOMAIN D_IDPS AS SMALLINT DEFAULT 0; '+
'CREATE DOMAIN D_MONTH AS SMALLINT DEFAULT 0; '+
'CREATE DOMAIN D_SMALLINT AS SMALLINT DEFAULT 0; '+
'CREATE DOMAIN D_TIME AS VARCHAR(10) CHARACTER SET WIN1251 DEFAULT '+QuotedStr('00:00')+' COLLATE PXW_CYRL; '+
'CREATE DOMAIN D_VARCHAR_45 AS VARCHAR(45) CHARACTER SET WIN1251 COLLATE PXW_CYRL; '+
'CREATE TABLE ACCOUNT_ALL ( '+
' MONTH_NOM D_MONTH, '+
' ID_PS D_IDPS, '+
' PROFBRIG D_SMALLINT, '+
' NAME_BRIG D_VARCHAR_45, '+
' MED_PLAN D_FLOAT, '+
' MED_PLAN_TIME D_TIME, '+
' MED_FACT D_FLOAT, '+
' MED_FACT_TIME D_TIME, '+
' TIME_IDLE D_TIME, '+
' AUTO_PLAN D_FLOAT, '+
' AUTO_PLAN_TIME D_TIME, '+
' AUTO_FACT D_FLOAT, '+
' AUTO_FACT_TIME D_TIME, '+
' TIME_REPAIR D_TIME '+
');'+
'CREATE TABLE ACCOUNT_YEAR ( '+
' DATESMEN DATE, '+
' MONTH_NOM D_MONTH '+
'); '+
'CREATE INDEX ACCOUNT_ALL_IDX ON ACCOUNT_ALL (MONTH_NOM, ID_PS, PROFBRIG);'+
'CREATE INDEX DAYS_YEAR_IDX ON DAYS_YEAR (DATESMEN);';
end;
//---------------------------------------------------- создание базы данных:
function CreateFIBDatabase( IBCConnection : TIBCConnection;
IBCTransaction : TIBCTransaction;
const sFileName : string;
User: string = 'SYSDBA';
Code: string = 'masterkey';
ClientLib: string = 'gds32.dll'): Boolean;
begin
Result:= False;
if (Trim(sFileName)='') then Exit;
if not FileExists(sFileName) then
begin
try
with IBCConnection do
begin
SQLDialect:= 3;
Database := sFileName;
DefaultTransaction := IBCTransaction;
Username := User;
Password := Code;
ClientLibrary := ClientLib;
Options.Charset := 'WIN1251';
Options.Protocol := TCP;
CreateDatabase;
Result:= FileExists(sFileName);
end;
except
MessageDlg('Ошибка создание Базы Данных:'+ #13#13+
QuotedStr(sFileName) +' !', mtError,[mbOK],0);
Result:= False;
end;
end
else begin
if MessageDlg('База Данных:'+#13#13+
QuotedStr(sFileName) +#13#13+
'уже существует!. Перезаписать существующую Базу Данных?',
mtConfirmation, [mbOk, mbCancel], 0) = mrOk then
begin
if DeleteFile(PChar(sFileName)) then
begin
try
with IBCConnection do
begin
Database := sFileName;
DefaultTransaction := IBCTransaction;
Username := User;
Password := Code;
ClientLibrary := ClientLib;
CreateDatabase;
Result:= FileExists(sFileName);
end;
except
MessageDlg('Ошибка создание Базы Данных:'+ #13#13+
QuotedStr(sFileName) +' !', mtError,[mbOK],0);
Result:= False;
end;
end;
end;
end;
end;
//------------------------------------------------------- подключение к базе :
function FIBConnection( IBCConnection : TIBCConnection;
IBCTransaction : TIBCTransaction;
const sFileName : string;
bConnect : Boolean=True): Boolean;
begin
Result:= False;
try
with IBCConnection do
begin
if FileExists(sFileName) then
begin
Database := sFileName;
DefaultTransaction := IBCTransaction;
Username := 'SYSDBA';
Password := 'masterkey';
ClientLibrary := 'gds32.dll';
case bConnect of
True :
begin
try
if not Connected then Connected:= True;
Transaction.Active:= Connected;
Result:= Connected;
except
MessageDlg('Подключение к базе '+sFileName+' не выполнено',
mtWarning, [mbOk], 0 );
Result:= False;
end;
end ;
False :
begin
try
Connected:= False;
Transaction.Active:= Connected;
Result:= not Connected;
except
MessageDlg('Отключение от базы '+sFileName+' не выполнено',
mtWarning, [mbOk], 0 );
Result:= False;
end;
end ;
end; // case
end
else begin
MessageDlg('База '+sFileName+' не найдена!',
mtWarning, [mbOk], 0 );
Result:= False;
end;
end;
except
MessageDlg('Не доступен SQL-Сервер!',mtError,[mbOK],0);
Result:= False;
end;
end;
//---------------------------------------------- создание таблиц базы данных:
function CreateFIBTables( IBCConnection : TIBCConnection;
IBCTransaction : TIBCTransaction;
IBCQuery : TIBCQuery;
const sFileName : string ):Boolean;
var
sSQLTxt:string;
begin
sSQLTxt := CreateAccountSQLText;
Result := False;
try
if CreateFIBDatabase( IBCConnection, IBCTransaction, sFileName) then
begin
if FIBConnection( IBCConnection, IBCTransaction, sFileName) then
begin
try
with IBCQuery do
begin
Connection := IBCConnection;
Transaction:= IBCTransaction;
Close;
SQL.Clear;
SQL.Text:= sSQLTxt;
ExecSQL;
end;
Result:= True;
except
Result:= False;
end;
end;
end;
except
Result:= False;
end;
end;
[/more]
Заранее спасибо.
Использую компоненты из пакета IbDac для доступа к базе Firebird 2.5
Нужно создать программно новую базу и создать в ней таблицы и т.д.
Проблема - при выполнении запроса - ошибка, хотя этот же текст по одной строке выполняется без проблем, весь текст без проблем выполняется в IBExpert'e
[more=Код.]
//---------------------------------------------------------- создание SQLText:
function CreateSQLText:string;
begin
Result:=
'CREATE DOMAIN D_FLOAT AS FLOAT DEFAULT 0.00; '+
'CREATE DOMAIN D_IDPS AS SMALLINT DEFAULT 0; '+
'CREATE DOMAIN D_MONTH AS SMALLINT DEFAULT 0; '+
'CREATE DOMAIN D_SMALLINT AS SMALLINT DEFAULT 0; '+
'CREATE DOMAIN D_TIME AS VARCHAR(10) CHARACTER SET WIN1251 DEFAULT '+QuotedStr('00:00')+' COLLATE PXW_CYRL; '+
'CREATE DOMAIN D_VARCHAR_45 AS VARCHAR(45) CHARACTER SET WIN1251 COLLATE PXW_CYRL; '+
'CREATE TABLE ACCOUNT_ALL ( '+
' MONTH_NOM D_MONTH, '+
' ID_PS D_IDPS, '+
' PROFBRIG D_SMALLINT, '+
' NAME_BRIG D_VARCHAR_45, '+
' MED_PLAN D_FLOAT, '+
' MED_PLAN_TIME D_TIME, '+
' MED_FACT D_FLOAT, '+
' MED_FACT_TIME D_TIME, '+
' TIME_IDLE D_TIME, '+
' AUTO_PLAN D_FLOAT, '+
' AUTO_PLAN_TIME D_TIME, '+
' AUTO_FACT D_FLOAT, '+
' AUTO_FACT_TIME D_TIME, '+
' TIME_REPAIR D_TIME '+
');'+
'CREATE TABLE ACCOUNT_YEAR ( '+
' DATESMEN DATE, '+
' MONTH_NOM D_MONTH '+
'); '+
'CREATE INDEX ACCOUNT_ALL_IDX ON ACCOUNT_ALL (MONTH_NOM, ID_PS, PROFBRIG);'+
'CREATE INDEX DAYS_YEAR_IDX ON DAYS_YEAR (DATESMEN);';
end;
//---------------------------------------------------- создание базы данных:
function CreateFIBDatabase( IBCConnection : TIBCConnection;
IBCTransaction : TIBCTransaction;
const sFileName : string;
User: string = 'SYSDBA';
Code: string = 'masterkey';
ClientLib: string = 'gds32.dll'): Boolean;
begin
Result:= False;
if (Trim(sFileName)='') then Exit;
if not FileExists(sFileName) then
begin
try
with IBCConnection do
begin
SQLDialect:= 3;
Database := sFileName;
DefaultTransaction := IBCTransaction;
Username := User;
Password := Code;
ClientLibrary := ClientLib;
Options.Charset := 'WIN1251';
Options.Protocol := TCP;
CreateDatabase;
Result:= FileExists(sFileName);
end;
except
MessageDlg('Ошибка создание Базы Данных:'+ #13#13+
QuotedStr(sFileName) +' !', mtError,[mbOK],0);
Result:= False;
end;
end
else begin
if MessageDlg('База Данных:'+#13#13+
QuotedStr(sFileName) +#13#13+
'уже существует!. Перезаписать существующую Базу Данных?',
mtConfirmation, [mbOk, mbCancel], 0) = mrOk then
begin
if DeleteFile(PChar(sFileName)) then
begin
try
with IBCConnection do
begin
Database := sFileName;
DefaultTransaction := IBCTransaction;
Username := User;
Password := Code;
ClientLibrary := ClientLib;
CreateDatabase;
Result:= FileExists(sFileName);
end;
except
MessageDlg('Ошибка создание Базы Данных:'+ #13#13+
QuotedStr(sFileName) +' !', mtError,[mbOK],0);
Result:= False;
end;
end;
end;
end;
end;
//------------------------------------------------------- подключение к базе :
function FIBConnection( IBCConnection : TIBCConnection;
IBCTransaction : TIBCTransaction;
const sFileName : string;
bConnect : Boolean=True): Boolean;
begin
Result:= False;
try
with IBCConnection do
begin
if FileExists(sFileName) then
begin
Database := sFileName;
DefaultTransaction := IBCTransaction;
Username := 'SYSDBA';
Password := 'masterkey';
ClientLibrary := 'gds32.dll';
case bConnect of
True :
begin
try
if not Connected then Connected:= True;
Transaction.Active:= Connected;
Result:= Connected;
except
MessageDlg('Подключение к базе '+sFileName+' не выполнено',
mtWarning, [mbOk], 0 );
Result:= False;
end;
end ;
False :
begin
try
Connected:= False;
Transaction.Active:= Connected;
Result:= not Connected;
except
MessageDlg('Отключение от базы '+sFileName+' не выполнено',
mtWarning, [mbOk], 0 );
Result:= False;
end;
end ;
end; // case
end
else begin
MessageDlg('База '+sFileName+' не найдена!',
mtWarning, [mbOk], 0 );
Result:= False;
end;
end;
except
MessageDlg('Не доступен SQL-Сервер!',mtError,[mbOK],0);
Result:= False;
end;
end;
//---------------------------------------------- создание таблиц базы данных:
function CreateFIBTables( IBCConnection : TIBCConnection;
IBCTransaction : TIBCTransaction;
IBCQuery : TIBCQuery;
const sFileName : string ):Boolean;
var
sSQLTxt:string;
begin
sSQLTxt := CreateAccountSQLText;
Result := False;
try
if CreateFIBDatabase( IBCConnection, IBCTransaction, sFileName) then
begin
if FIBConnection( IBCConnection, IBCTransaction, sFileName) then
begin
try
with IBCQuery do
begin
Connection := IBCConnection;
Transaction:= IBCTransaction;
Close;
SQL.Clear;
SQL.Text:= sSQLTxt;
ExecSQL;
end;
Result:= True;
except
Result:= False;
end;
end;
end;
except
Result:= False;
end;
end;
[/more]
Заранее спасибо.
Цитата:
Проблема - при выполнении запроса - ошибка, хотя этот же текст по одной строке выполняется без проблем, весь текст без проблем выполняется в IBExpert'e
а ошибка так и пишется Ошибка и все ??
Вообще я такие скрипты выполнял через компонет TpFibScript (точное нзвание не помню уже) а в IBDac не знаю есть такой компонент или нет...
jonikDk
Где-то в коде SQL скрипта - CREATE
Где-то в коде SQL скрипта - CREATE
EugeneBoss3
Файл Базы создается или нет ? Если да, то идем дальше. Посмотри в help по IBdac TIBCQuery умеет выполнять скрипты, ну либо сам попробуй делов на 5 минут. Если не умеет, то посмотри в help может есть компонент который может выполнять.
Цитата:
ну Delphi должен был нормальную ощибку выдать, а нет такую...
Файл Базы создается или нет ? Если да, то идем дальше. Посмотри в help по IBdac TIBCQuery умеет выполнять скрипты, ну либо сам попробуй делов на 5 минут. Если не умеет, то посмотри в help может есть компонент который может выполнять.
Цитата:
Где-то в коде SQL скрипта - CREATE
ну Delphi должен был нормальную ощибку выдать, а нет такую...
jonikDk
Использовал компонент TIBCScript - все нормально! Спасибо!!!
Использовал компонент TIBCScript - все нормально! Спасибо!!!
Hi All
А в ХП птица можно как в DELPHI написать
Пример в Делфи
Код:
try
Защищенный Блок
except
end;
А в ХП птица можно как в DELPHI написать
Пример в Делфи
Код:
try
Защищенный Блок
except
end;
Код: DECLARE a INTEGER;
BEGIN
a = 23 / a;
WHEN SQLCODE -802 DO
BEGIN
a = 12;
END
WHEN GDSCODE arith_except DO
BEGIN
EXEPTION;
END
WHEN EXCEPTION my_error DO
BEGIN
EXEPTION my_error 'User defined error raised';
END
WHEN ANY DO
BEGIN
a = 12;
EXEPTION;
END
END;
Подскажите плиз.
Есть база, в ней одна таблица содержит в blob полях jpeg и gif файлы.
С помощью чего - попроще, можно вытащить эти картинки.
Программка мож какая. Чтобы экспортировать и сразу в папочку.
Есть база, в ней одна таблица содержит в blob полях jpeg и gif файлы.
С помощью чего - попроще, можно вытащить эти картинки.
Программка мож какая. Чтобы экспортировать и сразу в папочку.
kolyas
IBExpert или написать свою.
IBExpert или написать свою.
volser
разве при экспорте в ibexpert можно выгрузить из blob полей файлами ?
подскажите где это там такое.
с interbase я как то совсем не дружен. =(
разве при экспорте в ibexpert можно выгрузить из blob полей файлами ?
подскажите где это там такое.
с interbase я как то совсем не дружен. =(
Третья российская конференция по СУБД Firebird и InterBase У кого есть возможность посетить (особенно за счет работодателя) настоятельно рекомендую, первые две были очень полезны.
Цитата:
IBExpert или написать свою.
Ну одним махом по файлом наверно все не разложишь, но открыть в Blob Viewer/Editor открыть и сохранить можно...а что бы автоматизировать придется сам ому что то писать...
kolyas
Написать свою и выгрузить блобы в файлы - только так , при использовании менеджеров БД придется ручками выковыривать, так то вот
Написать свою и выгрузить блобы в файлы - только так , при использовании менеджеров БД придется ручками выковыривать, так то вот
data man
Цитата:
да с задержкой почти на 2 года. Но все равно приятная новость.
Цитата:
Наконец-то 2.5 релизнулся, ура!
да с задержкой почти на 2 года. Но все равно приятная новость.
Что там нового в новой версии?
Где б почитать по-русски
Где б почитать по-русски
Vital283
ищи на sql.ru Гаджимуратов должен выложить или уже выложил на руском релиз нот
ищи на sql.ru Гаджимуратов должен выложить или уже выложил на руском релиз нот
Vital283
Лутше всех знает Dimitry Sibiryakov на SQL.ru
Лутше всех знает Dimitry Sibiryakov на SQL.ru
Vital283
Ссылка
Ссылка
Плохой канал, глюки сервера и т.п. приводят к периодическому отключения программы от сервера с БД. Буквально через секунду соединение восстанавливается, но нужно реконнектить отключившиеся датасеты. Подскажите, пожалуйста, как правильнее всего организовать обработку отключения от сервера с последующим восстановлением подключения и открытием датасетов/выполнением последней команды обновления данных?
FireBird 2.1.3, Delphi, FIB.
FireBird 2.1.3, Delphi, FIB.
Страницы: 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
Предыдущая тема: Сравнение двух строк
Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.