Delphi连接sql数据库怎么判断连接是否成功呢?

时间:2021-06-03 04:33:42
一切属性都设置好后,我在Button里 ADOConnection1.Connected := True;这样连的,之后如何判断是否连接成功了呢?
查询一下数据试试?有更直接的办法吗?

4 个解决方案

#1


1、ADOConnection1.Connected本身就可判断
if ADOConnection1.Connected then 连接成功

2、可以编写一个连函数,试着连接数据库某个表的数据,返回连接成功值。

3、代码如下:

var Con:boolean;
  try
    DataModule1.ADOCon.Connected:=False;
    DataModule1.ADOCon.ConnectionString:=ConnectionString;
    DataModule1.ADOCon.Connected:=True;
    Con:=True;
    StatusBar1.Panels[0].Text:=' 数据连接成功!';
  except
    Con:=False;
    StatusBar1.Panels[0].Text:=' 连接数据失败......';
  end;

(1)通过Con判断是否连接
(2)StatusBar1显示是否连接成功。

#2


try
   ADOConnection1.Open;
except
end;
if  ADOConnection1.Connected then
  //连接成功
else
  //连接失败;

#3


引用 1 楼 lyhoo163 的回复:
1、ADOConnection1.Connected本身就可判断
if ADOConnection1.Connected then 连接成功

2、可以编写一个连函数,试着连接数据库某个表的数据,返回连接成功值。

3、代码如下:

var Con:boolean;
  try
    DataModule1.ADOCon.Connected:=False;
    DataModule1.ADOCon.ConnectionString:=ConnectionString;
    DataModule1.ADOCon.Connected:=True;
    Con:=True;
    StatusBar1.Panels[0].Text:=' 数据连接成功!';
  except
    Con:=False;
    StatusBar1.Panels[0].Text:=' 连接数据失败......';
  end;

(1)通过Con判断是否连接
(2)StatusBar1显示是否连接成功。


用DataModule1只不过是好习惯而已吧?不用它是不是没啥区别

#4


引用 3 楼 u013402605 的回复:
Quote: 引用 1 楼 lyhoo163 的回复:

1、ADOConnection1.Connected本身就可判断
if ADOConnection1.Connected then 连接成功

2、可以编写一个连函数,试着连接数据库某个表的数据,返回连接成功值。

3、代码如下:

var Con:boolean;
  try
    DataModule1.ADOCon.Connected:=False;
    DataModule1.ADOCon.ConnectionString:=ConnectionString;
    DataModule1.ADOCon.Connected:=True;
    Con:=True;
    StatusBar1.Panels[0].Text:=' 数据连接成功!';
  except
    Con:=False;
    StatusBar1.Panels[0].Text:=' 连接数据失败......';
  end;

(1)通过Con判断是否连接
(2)StatusBar1显示是否连接成功。


用DataModule1只不过是好习惯而已吧?不用它是不是没啥区别

区别到是没什么,不过一个好习惯也是码农的必备的,想想每个Form上N个数据库控件,看起来就头疼啊,不如都放在DataModule1内,找起来也方便。

#1


1、ADOConnection1.Connected本身就可判断
if ADOConnection1.Connected then 连接成功

2、可以编写一个连函数,试着连接数据库某个表的数据,返回连接成功值。

3、代码如下:

var Con:boolean;
  try
    DataModule1.ADOCon.Connected:=False;
    DataModule1.ADOCon.ConnectionString:=ConnectionString;
    DataModule1.ADOCon.Connected:=True;
    Con:=True;
    StatusBar1.Panels[0].Text:=' 数据连接成功!';
  except
    Con:=False;
    StatusBar1.Panels[0].Text:=' 连接数据失败......';
  end;

(1)通过Con判断是否连接
(2)StatusBar1显示是否连接成功。

#2


try
   ADOConnection1.Open;
except
end;
if  ADOConnection1.Connected then
  //连接成功
else
  //连接失败;

#3


引用 1 楼 lyhoo163 的回复:
1、ADOConnection1.Connected本身就可判断
if ADOConnection1.Connected then 连接成功

2、可以编写一个连函数,试着连接数据库某个表的数据,返回连接成功值。

3、代码如下:

var Con:boolean;
  try
    DataModule1.ADOCon.Connected:=False;
    DataModule1.ADOCon.ConnectionString:=ConnectionString;
    DataModule1.ADOCon.Connected:=True;
    Con:=True;
    StatusBar1.Panels[0].Text:=' 数据连接成功!';
  except
    Con:=False;
    StatusBar1.Panels[0].Text:=' 连接数据失败......';
  end;

(1)通过Con判断是否连接
(2)StatusBar1显示是否连接成功。


用DataModule1只不过是好习惯而已吧?不用它是不是没啥区别

#4


引用 3 楼 u013402605 的回复:
Quote: 引用 1 楼 lyhoo163 的回复:

1、ADOConnection1.Connected本身就可判断
if ADOConnection1.Connected then 连接成功

2、可以编写一个连函数,试着连接数据库某个表的数据,返回连接成功值。

3、代码如下:

var Con:boolean;
  try
    DataModule1.ADOCon.Connected:=False;
    DataModule1.ADOCon.ConnectionString:=ConnectionString;
    DataModule1.ADOCon.Connected:=True;
    Con:=True;
    StatusBar1.Panels[0].Text:=' 数据连接成功!';
  except
    Con:=False;
    StatusBar1.Panels[0].Text:=' 连接数据失败......';
  end;

(1)通过Con判断是否连接
(2)StatusBar1显示是否连接成功。


用DataModule1只不过是好习惯而已吧?不用它是不是没啥区别

区别到是没什么,不过一个好习惯也是码农的必备的,想想每个Form上N个数据库控件,看起来就头疼啊,不如都放在DataModule1内,找起来也方便。