我在做数据库程序,不想用bde和odbc
请给出手写代码,以便我能连上access 、excel 、ms sql server、
sybase、oracle 比如像下面这样:
Aconnection.open('Driver={Microsoft Access Driver (*.mdb)};DBQ=c:\leberty\Toacc');我发现有很多种手写方式,感觉很乱。有没有真明白的高手给俺讲讲?
请给出手写代码,以便我能连上access 、excel 、ms sql server、
sybase、oracle 比如像下面这样:
Aconnection.open('Driver={Microsoft Access Driver (*.mdb)};DBQ=c:\leberty\Toacc');我发现有很多种手写方式,感觉很乱。有没有真明白的高手给俺讲讲?
function TfmUserLogin.GenConnectString:Boolean;
begin
with MainForm.ADOConnection1 do
begin
try
if Connected then
MainForm.ADOConnection1.Close;
Provider:='SQLOLEDB';//這為數據庫類型
Properties['Data Source'].Value:=cbbServer.Text;//為數據庫所在服務器名稱
Properties['User ID'].Value:='sa';//用戶名
Properties['Password'].Value:='';//密碼
Properties['Initial Catalog'].Value:=cbbCatalogName.Text;//數據庫名稱
Open;
Result:=True;
except
Result:=False;
end;
end;
end;
//這是最基本的連接字符串生成。其實Properties['屬性名稱']是一個很好用的東西。:)
你可以此用ADOCONED單元,這樣就可以用EditConnectionString函數取得連接字符串。
再编辑ado的connectionstring的时候可以通过向导取得所有的种类的连接字符串。
adoc := CreateOleObject('ADODB.Connection');
// 打开
adoc.Open ('Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data
Source = F:\Delphi5\Nnd.mdb;Mode =Share
Deny None;Extended Properties="";Jet OLEDB:System database="";Jet
OLEDB:Registry Path="";Jet OLEDB:Database Password="";Jet
OLEDB:Engine Type=5;Jet OLEDB:Database Locking Mode=1;Jet
OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Global Bulk
Transactions=1;Jet OLEDB:New Database Password="";Jet OLEDB:Create
System Database=False;Jet OLEDB:Encrypt Database=False;Jet
OLEDB:Don''t Copy Locale on Compact=False;Jet OLEDB:Compact Without
Replica Repair=False;Jet OLEDB:SFP=False');打开数据表
写如下的程序代码:
procedure TForm1.btnOpenTableClick(Sender: TObject);
begin
ador := CreateOleObject('ADODB.RecordSet');
ador.ActiveConnection := adoc;
// 设定指令类型与内容
ador.Open('Select * from 客户', adoc, adOpenStatic,adLockOptimistic, adCmdText); // 执行指令end;
Aconnection.open('Driver={Microsoft Access Driver (*.mdb)};DBQ=c:\leberty\Toacc');
这是连mdb的,我想要其它的库连接代码。难道都不知道,那可是borland的错呀??!
private
cn,rs:variant;cn:=createoleobject('adodb.connection');rs:=createoleobject('adodb.recordset');写你的代码
rs.close;
cn.close;
begin
//初始化窗体;
adoconnection1.connected:=false;//连接到hssystem ; //打开数据库
adoconnection1.connectionstring:='Provider=SQLOLEDB.1;'
+'Persist Security Info=False;'
+'User ID='+frmMain.sqluser+';'
+'Initial Catalog=hssystem;'
+'Data Source='+frmMain.sqlserver;
adoconnection1.LoginPrompt:=false;
adoconnection1.connected:=true;
adoconnection1.Open;
adoconnection2.connected:=false;//连接到hs81890; //打开数据库
adoconnection2.connectionstring:='Provider=SQLOLEDB.2;'
+'Persist Security Info=False;'
+'User ID='+frmMain.sqluser+';'
+'Initial Catalog=hs81890;'
+'Data Source='+frmMain.sqlserver;
adoconnection2.LoginPrompt:=false;
adoconnection2.connected:=true;
adoconnection2.Open;
end; ============================
@* .☆ / */ . / * . ☆/ *。
◢◣。 ◢◣。
◢★◣。 ◢★◣。
◢■■◣。 ◢■■◣。
◢■■■◣。 ◢■■■◣。
︸︸||︸︸ !!︸︸||︸︸
愿您有快乐的每一天 ^_^!!
Option Explicit
'必须先引用一下Microsoft ActiveX Data Object 2.x Library (ADO类库)
Dim rs As New ADODB.Recordset
Dim cn As New ADODB.ConnectionPrivate Sub Form_Load()
'ADO Connection对象Open方法:connection.Open ConnectionString, UserID, Password, OpenOptions
'注:实际使用时请将下列字符串换成实际的值
'dsnname -> DSN 数据源的名称
'userid , password -> 登录数据库时需要的用户名和密码
'databasename -> 数据库名称
'dbpath -> MDB 数据库文件的路径
'servername -> 数据库服务器的名称,如果本机是数据库服务器,可指定为server=(local)
'Microsoft OLE DB ODBC Provider
'请确保系统中已经安装了MDB数据库或SOL Server数据库的ODBC驱动程序
'A.访问Access(*.mdb)数据库
'::DSN连接
'cn.Open "dsnname", "userid", "password" 没有密码时可写成:cn.open "dsnname"
'或cn.open "dsn=dsnname;uid=userid;pwd=password" 没有密码时可写成:cn.open "dsn=dsnname"
'::非DSN连接
'cn.Open "Driver={Microsoft Access Driver (*.mdb)};dbq=c:\dbpath\databasename.mdb;uid=userid;pwd=password"
'或cn.Open "Driver={Microsoft Access Driver (*.mdb)};dbq=c:\dbpath\databasename.mdb","userid","password"
'访问其他中小型数据库(包括文本文件)方法同MDB数据库的访问方法相同,但使用非DSN连接方法时必须打开[开始][设置]
'[控制面板][ODBC数据源(32位)][驱动程序]选项卡,并将driver={...}改成相应的driver={"名称栏"中所显示的字符串}
'并将dbq=... 改成所在数据库的路径和数据库文件名称,uid,pwd 可根据情况添加或省略 'B.访问MS SQL Server 7 数据库
'::DSN连接方法
'(如果已经在DSN中指定了需要的数据库名,则database=...一句可以省略)
'cn.Open "dsn=dsnname;database=dbname", "userid", "password" '方法1
'cn.Open "dsn=dsnname;database=dbname;uid=userid;pwd=password" '方法2
'(如果没有密码[空白密码],可以写成pwd=,如:"dsn=dsnname;database=dbname;uid=userid;pwd=")
'::非DSN连接方法
'cn.Open "driver={sql server};server=servername;database=dbname;uid=userid;pwd=password" '方法1
'cn.Open "driver={sql server};server=servername;database=dbname", "userid", "password" '方法2
'访问其他大型数据库方法同SQL Server的访问方法相同,但使用非DSN连接方法,必须打开[开始][设置][控制面板]
'[ODBC数据源(32位)][驱动程序]选项卡,并将driver={sql server}改成相应的driver={"名称栏"中所显示的字符串}
'Microsoft OLE DB SQL Server Provider 访问MS SQL Server 7 数据库
'cn.Open "Provider=sqloledb;Data Source=servername;Initial Catalog=databasename;User Id=userid;Password=password"
'或cn.Open "Provider=sqloledb;Data Source=servername;Initial Catalog=databasename","uerid","password"
'此方法仅用于访问MS SQL Server 7 数据库
'打开RecordSet , 并绑定到DataGrid控件:
'rs.CursorLocation = adUseClient
'rs.Open "select * from users", cn, adOpenDynamic[adOpenKeySet], adLockPessimistic[adLockOptimistic]
'这里cn(adodb.connection对象)也可以用连接字符串(上述cn.open后面的字符串)代替
'Set DataGrid1.DataSource = rs
End Sub
各位有没有for delphi的,连接access 、excel 、ms sql server、
sybase、oracle ??
我想借贴了,有能答的就快点吧!