怎样连接SQL上的数据库(不用ODBC)

时间:2022-06-01 16:59:45
大家都用ODBC连接过SQL吧,但我编写的软件总很菜,每次给工作站安装软件后还得配置一遍ODBC,菜!如何做一个好的C/S结构软件,在安装时不用配置。只要在客户端SETUP,服务端SETUP就可以了,像一个正规商业软件?

6 个解决方案

#1


你可以试试ADO来连接数据库,不过要搞得象一个正规专业软件,还是需要一些配置的,否则也太不专业了,你可以用安装程序来设置或者自己做一个安装程序。
如果还想更深一层就只好自己写驱动程序和网络连接程序了.

#2


可以啊,你可以在你的程序中动态的建立访问SQL的数据连接方式,不管是通过BDE还是ODBC来访问,都可以,这样做的话你在客户端还是需要做一点设置的工作,就是确定数据库服务器的名称和访问的用户。这个你可以让用户输入,就行了。在你的程序中使用一个Database控件(如果你是用BDE/ODBC的方式来访问数据库的话),然后选择你的数据库访问驱动,如果是BDE的方式你可以使用MSSQL的驱动,其他的参数可以在程序中通过,TDatabase对象的Params对象来修改参数,这样就动态的创建了BDE的别名。如果你使用的是ODBC的方式你的设置基本也差不多,只是在程序运行试你需要通过ODBC的API来建立一个ODBC的数据源,然后在你的程序中访问。当然如果你使用的是ADO的数据访问方式就很简单了,你需要使用一个TADOConnection控件,然后程序启动时动态的创建ConnectionString来达到你的数据访问目的。构建一个ConnectString只要格式这确就可以了,你可以看一看ConnectionString的写法就知道了。

#3


我早已听说过ADO的好处了,现在已决定放弃ODBC了。不过还需问一下有关操作(主要是我这里没有ADO的资料)。我原先是用DATABASE的,然后用QUERY连接所需的表格。哪么现在怎样用ADO来替代呢?我已试用过ADOCONNECTION了,试用情况是这样的,先将它放于一个FORM上,然后双键它,用BUILD选择数据源类型(我是用SQL SERVER)的,然后经过一些操作,当测试数据连接时显示成功,再如何进行呢?

#4


我同意用ADO,我用ADO 连接SQL7.0 Server,非常好用!用法可查MSDN. 

#5


//ADO dfm
//...
  object ADOQuery1: TADOQuery //和一般的Query一样哦,还可以支持多行SQL执行
    AutoCalcFields = False
    ConnectionString = 
      'Provider=SQLOLEDB.1;Persist Security Info=False;User ID=MyID;Initi' +
      'al Catalog=MyDatabase;Data Source=DataServer'
    CursorType = ctStatic
    LockType = ltBatchOptimistic  //可以实现缓存更新哦
    Parameters = <>
    SQL.Strings = (
      'select * from info')
  end
//...

//ADO pas
//...
  with ADOQueryDeptDoc do try
    UpdateBatch;
  except
    ShowMessage('不是我的错!');
  end;
//...

#6


用ado!如果只是连接表格,用adotable控件就可以啦,用法几乎和bde的table一样!

#1


你可以试试ADO来连接数据库,不过要搞得象一个正规专业软件,还是需要一些配置的,否则也太不专业了,你可以用安装程序来设置或者自己做一个安装程序。
如果还想更深一层就只好自己写驱动程序和网络连接程序了.

#2


可以啊,你可以在你的程序中动态的建立访问SQL的数据连接方式,不管是通过BDE还是ODBC来访问,都可以,这样做的话你在客户端还是需要做一点设置的工作,就是确定数据库服务器的名称和访问的用户。这个你可以让用户输入,就行了。在你的程序中使用一个Database控件(如果你是用BDE/ODBC的方式来访问数据库的话),然后选择你的数据库访问驱动,如果是BDE的方式你可以使用MSSQL的驱动,其他的参数可以在程序中通过,TDatabase对象的Params对象来修改参数,这样就动态的创建了BDE的别名。如果你使用的是ODBC的方式你的设置基本也差不多,只是在程序运行试你需要通过ODBC的API来建立一个ODBC的数据源,然后在你的程序中访问。当然如果你使用的是ADO的数据访问方式就很简单了,你需要使用一个TADOConnection控件,然后程序启动时动态的创建ConnectionString来达到你的数据访问目的。构建一个ConnectString只要格式这确就可以了,你可以看一看ConnectionString的写法就知道了。

#3


我早已听说过ADO的好处了,现在已决定放弃ODBC了。不过还需问一下有关操作(主要是我这里没有ADO的资料)。我原先是用DATABASE的,然后用QUERY连接所需的表格。哪么现在怎样用ADO来替代呢?我已试用过ADOCONNECTION了,试用情况是这样的,先将它放于一个FORM上,然后双键它,用BUILD选择数据源类型(我是用SQL SERVER)的,然后经过一些操作,当测试数据连接时显示成功,再如何进行呢?

#4


我同意用ADO,我用ADO 连接SQL7.0 Server,非常好用!用法可查MSDN. 

#5


//ADO dfm
//...
  object ADOQuery1: TADOQuery //和一般的Query一样哦,还可以支持多行SQL执行
    AutoCalcFields = False
    ConnectionString = 
      'Provider=SQLOLEDB.1;Persist Security Info=False;User ID=MyID;Initi' +
      'al Catalog=MyDatabase;Data Source=DataServer'
    CursorType = ctStatic
    LockType = ltBatchOptimistic  //可以实现缓存更新哦
    Parameters = <>
    SQL.Strings = (
      'select * from info')
  end
//...

//ADO pas
//...
  with ADOQueryDeptDoc do try
    UpdateBatch;
  except
    ShowMessage('不是我的错!');
  end;
//...

#6


用ado!如果只是连接表格,用adotable控件就可以啦,用法几乎和bde的table一样!