يمكنك إضافة إسم مستعار Alias لقاعدة بيانات بارادوكس Paradox بالدلفي بالكود التالي
PHP كود :
uses DBTables;
...
procedure TForm1.Button1Click(Sender: TObject);
var
Params: TStringList;
begin
if not Session.IsAlias('Mahdi') then
begin
Params := TStringList.Create;
with Params do
begin
Add('DEFAULT DRIVER=PARADOX');
Add('ENABLE BCD=True');
Add('PATH=c:\Dir'); // مسار الإسم المستعار
end;
Session.AddAlias('Mahdi', 'PARADOX', Params); // هو الإسم المستعار المراد إضافته"Mahdi"
Session.SaveConfigFile;
Params.Free;
showmessage('تم إضافة الإسم المستعار بنجاح');
end else Showmessage('الإسم المستعار موجود');
end;
الكود التالي يساعدك على تغيير مسار الإسم المستعار
PHP كود :
procedure TForm1.Button2Click(Sender: TObject);
var
Params: TStringList;
begin
if Session.IsAlias('Mahdi') then
begin
Params := TStringList.Create;
with Params do
begin
Add('DEFAULT DRIVER=PARADOX');
Add('ENABLE BCD=True');
Add('PATH=c:\Dir1'); // المسار الجديد للإسم المستعار
end;
Session.ModifyAlias('Mahdi', Params); // هو الإسم المستعار المراد إضافته"Mahdi"
Session.SaveConfigFile;
Params.Free;
showmessage('تم تعديل الإسم المستعار بنجاح');
end else Showmessage('الإسم المستعار غير موجود');
end;
و في المرة القادمة نوضح كيفية حذف الإسم المستعار
ماشاء الله عليك مبدع أخي مهدي.
لا أنكر أن طريقتك كانت كالبلسم لمشكلتي.
لكن اقترح تعديل بسيط على الكود التالي ليكون أكثر ديناميكيه..ليتعرف على قاعدة المعطيات اينما وجد مجلد البرنامج..
ليصبح كالتالي:
PHP كود :
var ِAlias:String;
Alias:=ExtractFilePath(Application.exename)+'Data';// مسار قاعدة المعطيات
if Session.IsAlias('Mehdi') then
Session.DeleteAlias('Mehdi');
if not Session.IsAlias('Mehdi') then
begin
Params := TStringList.Create;
with Params do
begin
Add('DEFAULT DRIVER=PARADOX');
Add('ENABLE BCD=True');
Add('PATH='+Alias);
end;
Session.AddAlias('Mehdi', 'PARADOX', Params);
Session.SaveConfigFile;
Params.Free;
end;
إقتباس :Alias:=ExtractFilePath(Application.exename)+'Data';// مسار قاعدة المعطيات
هذا يعني أن مسار قاعدة البيانات متعلق بمسار البرنامج التنفيذي -تعديل موفق-
و هذا مثال آخر يساعد على تحديد مسار الإسم المستعار بشكل أحسن
كود :
uses FileCtrl, DBTables;
...
procedure TForm1.Button6Click(Sender: TObject);
var Dir: string;
Params: TStringList;
begin
Dir := '';
if SelectDirectory('حدد مسار الإسم المستعار ...', '', Dir) then
begin
if Session.IsAlias('Mahdi') then
begin
Params := TStringList.Create;
with Params do
begin
Add('DEFAULT DRIVER=PARADOX');
Add('ENABLE BCD=True');
Add('PATH=' +Dir); // المسار الجديد للإسم المستعار
end;
Session.ModifyAlias('Mahdi', Params); // هو الإسم المستعار المراد إضافته"Mahdi"
Session.SaveConfigFile;
Params.Free;
showmessage('تم تعديل الإسم المستعار بنجاح');
end else Showmessage('الإسم المستعار غير موجود');
end;
end;
الكود التالي يقوم بحذف الإسم المستعار
كود :
procedure TForm1.Button3Click(Sender: TObject);
begin
if Session.IsAlias('Mahdi') then
begin
Session.DeleteAlias('Mahdi'); // هو الإسم المستعار المراد حذفه"Mahdi"
Session.SaveConfigFile;
showmessage('تم حذف الإسم المستعار بنجاح');
end else Showmessage('الإسم المستعار غير موجود');
end;
السلام وعليكم
هل لابد أن أعرف الاسم المستعار كي يعمل البرنامج ؟
و عليكم السلام و رحمة الله
الإسم المستعار يستعمل فقط عند إستخدام قواعد البيانات التي تعمل على محرك قاعدة بيانات بورلاند Dbe.
السلام عليكم ورحمة الله وبركاته
هل تنفع هذه الطريقة مع اي قاعدة بيانات ? فمثلا قاعدة بيانات access
وعليكم السلام ورحمة الله وبركاته
نعم، فقط تحقق من الإعدادات بخصوص Access
والأفضل لـ Access استخدام ADO
بالتوفيق.
هل ممكن الاستغناء عن هدا الكود ونقل ملفات bde بطريقة أخرى