Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 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
2-1180954130
nali
2007-06-04 14:48
2007.06.24
Не рисуется иконка на кнопке в таскбаре


3-1175245543
Cara
2007-03-30 13:05
2007.06.24
Таблицы DBF.


2-1180533394
ShpionGraF
2007-05-30 17:56
2007.06.24
таблица MS Word


6-1164825746
Wahnsinng
2006-11-29 21:42
2007.06.24
Определение соединения с интернетом


9-1154442100
nuf
2006-08-01 18:21
2007.06.24
как нарисовать прицел на экране?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский