Форум: "Начинающим";
Текущий архив: 2007.06.24;
Скачать: [xml.tar.bz2];
ВнизADOConnection. Как указать только путь к БД? Найти похожие ветки
← →
DmitrichJ (2007-05-30 17:45) [0]Здравствуйте, Мастера. Изначально все настройки в ConnectionString сделаны, нужно только в процессе работы подключаться к разным базам. Т.е. просто менять только путь в ConnectionString. Как это сделать?
Спасибо
← →
Плохиш © (2007-05-30 17:53) [1]Properties
← →
ANB © (2007-05-30 18:19) [2]Я бы вообще не парясь особо перенес забивание строки в код. А то я уже нечаянно тер пару раз с трудом настроенную строку.
Заодно ее лучше видно. Ну и рантайм правки элементарно вносить.
← →
DmitrichJ (2007-05-30 18:19) [3]Плохиш, в нём через item нужно искать нужную строчку???
← →
DmitrichJ (2007-05-30 18:21) [4]ANB, я попробовал через 2-е константы String+"путь к бд+string, но ничего хорошего не вышло. или я тебя не понял.
← →
ANB © (2007-05-30 18:24) [5]
> DmitrichJ (30.05.07 18:21) [4]
Запости рабочую строку и то, как ты пытался ее собрать в рантайме. Рабочую строку обрами одинарными кавычками.
← →
Плохиш © (2007-05-30 18:29) [6]
> DmitrichJ (30.05.07 18:19) [3]
> Плохиш, в нём через item нужно искать нужную строчку???
Искать не нужно, он сам найдётProperties.Item["Initial Catalog"].Value
← →
Jan1 (2007-05-30 18:30) [7]
> Здравствуйте, Мастера. Изначально все настройки в ConnectionString
> сделаны, нужно только в процессе работы подключаться к разным
> базам. Т.е. просто менять только путь в ConnectionString.
> Как это сделать?
>
Как бы я сделал. Проверяю наличие строки соединения или в реестре или в ini. Если его нет, то выдаю - PromptDataSource(...) Потом в случае удачи, сохраняю где надо(ини, реестр) и в следующий раз уже прочитается от туда. Можно шифровать если боитесь хранить пароль, можно юзать виндовую аунтификацию если СУБД позволяет...
← →
DmitrichJ (2007-05-30 18:45) [8]Можно подробней???
form1.ADOConnection1.Properties.Item["Initial Catalog"].Value:=Edit1.Text;
form1.ADOConnection1.Connected:=true;
не работает!!!
Работаю с Аксессом, кстати
← →
Плохиш © (2007-05-30 18:47) [9]
> не работает!!!
Нет в программировании такого понятия, оно есть только у слесарей-сантехников...
← →
DmitrichJ (2007-05-30 19:48) [10]Ну хорошо, Плохишe, выдаёт ошибку! Говорит, мол параметр только для чтения
← →
sniknik © (2007-05-30 20:17) [11]врать не надо. оно не это "говорит".
← →
DmitrichJ (2007-05-31 18:01) [12]Так и не разобрался=(
Плохиш, можешь написать пример?
← →
Плохиш © (2007-05-31 18:09) [13]
const
strMSServer = "Data Source";
strMSDatabase = "Initial Catalog";
...
function SetDatabaseIntoConnection(var aConnection: TADOConnection;
sDB: String; sServer: String ): Boolean;
var
bIsOpen: Boolean;
begin
Result := false;
if Assigned( aConnection ) then
try
bIsOpen := aConnection.Connected;
if bIsOpen then aConnection.Close;
Case GetProvType( aConnection ) of
typMSSQL:
begin
if sServer <> "" then
aConnection.Properties.Item[strMSServer].Value := sServer;
aConnection.Properties.Item[strMSDatabase].Value := sDB; Result := true;
end;
typPostgre:
begin
if (sServer <> "") and
(CompareText(GetExtendProperty( aConnection, strPServer), sServer) <> 0) then
SetExtendProperty(aConnection, strPServer, sServer);
Result := SetExtendProperty(aConnection, strPDatabase, sDB);
end;
end;
if sDB = "" then Result := false;
if bIsOpen and Result then aConnection.Open;
except
Result := false;
end;
end;
← →
MsGuns © (2007-06-01 00:54) [14]>Плохиш © (31.05.07 18:09) [13]
О, боже !
Эк тебя угораздило, горемычного ;(
← →
Плохиш © (2007-06-01 01:45) [15]
> MsGuns © (01.06.07 00:54) [14]
> >Плохиш © (31.05.07 18:09) [13]
>
> О, боже !
> Эк тебя угораздило, горемычного ;(
Не понял...
← →
DmitrichJ (2007-06-01 16:28) [16]"Initial Catalog"- этот параметр не найден!!! Тем более у меня аксес, а не MS SQL
← →
Плохиш © (2007-06-01 16:37) [17]
> DmitrichJ (01.06.07 16:28) [16]
Найти название нужного тебе параметра, пусь будет твоим домашним заданием...
← →
sniknik © (2007-06-01 16:40) [18]> "Initial Catalog"- этот параметр не найден!!!
а куда делось
> Говорит, мол параметр только для чтения
?
про тот же самый параметр.
> Тем более у меня аксес, а не MS SQL
указывать надо было... у разных провайдеров разные параметры.
p.s. еще раз. врать не надо. тебе же проше будет. охотнее подскажут.
← →
DrAndrey © (2007-06-01 16:49) [19]>ANB © (30.05.07 18:19) [2]
хороший совет.
var PathDB: String;
PathDB:= "C:\q\qq\qqq\MyDb.mdb"
ConnectionString:= "Provider=Microsoft.Jet.OLEDB.4.0;"
+ "Data Source=" + PathDB +
+ ";Password="";Jet OLEDB:Database";
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2007.06.24;
Скачать: [xml.tar.bz2];
Память: 0.49 MB
Время: 0.042 c