BCB中如何用ADOConnection控件连接SQL2005数据库

时间:2021-08-25 20:47:56
就这么点分了,问个菜问题

解决问题立刻给分 ,在线等

这是我的数据库:
BCB中如何用ADOConnection控件连接SQL2005数据库
路径是:C:\Program Files\Microsoft SQL Server\MSSQL.2\MSSQL\Data\HelloSQLServer.mdf

数据库已经在SQL Server 2005 中附加好
BCB中如何用ADOConnection控件连接SQL2005数据库

现在BCB的一个Form中插入一个ADOConnection:
BCB中如何用ADOConnection控件连接SQL2005数据库

请问如何能连接上这个数据库?  ADOConnection中的连接字符串和Provider该怎么设置? BCB中如何用ADOConnection控件连接SQL2005数据库


求解答!

33 个解决方案

#1


试着用ODBC先连一下

#2


我是菜鸟  请具体点  谢谢   

#3


我这里还没有装2005,你试着2000的方法连接一下吧

sConn:=Format('Provider=SQLOLEDB.1;Persist Security Info=False;User ID=%s;Password=%s;Initial Catalog=%s;Data Source=%s;',
                [Trim(sUserId),Trim(sPass),Trim(sDatabase),Trim(sServer)]);
AdoConnection.ConnectionString:=sConn;
AdoConnection.Connected:=true;

#4


SQLOLEDB.1  是什么? 我的好像是什么SQLEXPRESS

#5


CB里放置ADOConnection组件,Build一下连接字符串看看吧

#6


那几个%s具体应该写什么啊? 我的问题中数据库类型和数据库路径都写了的,给个直接可以用的 常字符串 吧  谢谢

#7


连接不上,提示“无效的授权说明”

#8


字符串,把变量传进去

#9


2005没有装过,偶就不知道了。
你确定sa和sa的密码正确么?

#10


连接SQL2005 跟你数据库文件的路径没有关系的
连接方法跟连接SQL2000一样的


ADOConnection1->Close() ;  
ADOConnection1->ConnectionString="Provider=SQLOLEDB.1;Password=123456;Persist Security Info=False;User ID=sa;";  
ADOConnection1->ConnectionString+="Initial Catalog=jc_data;"; //jc_data:数据库名字  
ADOConnection1->ConnectionString+="Data Source=202.103.96.112"; //202.103.96.112:服务器...  
ADOConnection1->Open() ;  

#11


数据库名字到底是什么啊?我要用ODBC导入先?  那具体怎么导入SQL Server 2005的数据库啊? 我只会导入Access的

#12


那Initial Catalog这里  在我这个例子中  应该写HelloSQLServer么?

#13


数据库名称

#14


我这个例子中数据库名称是HelloSQLServer么?
我没有用ODBC的

#15


先填写HelloSQLServer试试吧,应该可以的

#16


Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Initial Catalog=master;Data Source=LocalSQL

我刚测试了个,使用CB的ADOConnection Build的,可以用

master是sql自己的数据库

#17


哦  我试试。。 Data Source=LocalSQL  LocalSQL是个什么? 我填的Localhost行不行?

#18


Sql服务管理器 服务器名称 一般的可能是你电脑名称

#19


Ole DB 选择的是Miscrosoft Ole Db Provider For Sql Server

#20


额 我也是用的master  就是连不上啊,
难道是我Data Source填错了? 我是按照你写的LocalSQL填的,
我的电脑名称是这个  
82Z6ZLWO9ZMB0VG


Data Source=82Z6ZLWO9ZMB0VG
是这样写么?

#21


错误信息是   SQL Server不存在或拒绝访问

#22


用Sql自带的企业管理器能打开那个库么?

那么写可以的。

#23


如果我的身份验证是Windows身份验证我该怎么写呢?那个sa我搞不对

#24


你的第四张图片,ConnectionString右边按钮 Build一个就成了,当然要测试连接。

#25




    ADOConnection1->Close() ;
    ADOConnection1->ConnectionString="Provider=SQLOLEDB.1;Password=;Persist Security Info=False;User ID=82Z6ZLWO9ZMB0VG\Administrator;Initial Catalog=master;Data Source=82Z6ZLWO9ZMB0VG\SQLEXPRESS";
    ADOConnection1->Open();
    Application->MessageBox("OK!","hint",64);




我这么写的  就是连不上,纠结啊。。
回复下10楼, ADOConnection1->ConnectionString 不能用 +=

#26


Windows身份验证没有密码么?
Password=;  ??

#27


奇怪了。。同一个字符串  在第四张图中Build就能连上, 写成代码就不行。。

#28


没有登录密码

#29


它给我Build的字符串是

Provider=SQLOLEDB.1;
Integrated Security=SSPI;
Persist Security Info=False;
Initial Catalog=master;
Data Source=82Z6ZLWO9ZMB0VG\SQLEXPRESS

直接测试连接可以,写成代码的就不行。。。

#30


检查你的 ID 和 密码

#31


终于可以了!!

你们说的是对的  只是我犯了一个小错误



// 我把 Data Source=82Z6ZLWO9ZMB0VG\SQLEXPRESS 写成了
"Data Source=82Z6ZLWO9ZMB0VG\SQLEXPRESS"

// 应该是
"Data Source=82Z6ZLWO9ZMB0VG\\SQLEXPRESS"



谢谢二位了!!

#32


后面的...按钮按下不久出来了吗,再按步骤配置一下就好了啊!非常简单

#33


"Data Source=82Z6ZLWO9ZMB0VG\\SQLEXPRESS"其中一个\是转义用的!

引用 31 楼 direct4d 的回复:
终于可以了!!

你们说的是对的  只是我犯了一个小错误


C/C++ code

// 我把 Data Source=82Z6ZLWO9ZMB0VG\SQLEXPRESS 写成了
"Data Source=82Z6ZLWO9ZMB0VG\SQLEXPRESS"

// 应该是
"Data Source=82Z6ZLWO9ZMB0VG\\SQLEXPRESS"




谢谢二……

#1


试着用ODBC先连一下

#2


我是菜鸟  请具体点  谢谢   

#3


我这里还没有装2005,你试着2000的方法连接一下吧

sConn:=Format('Provider=SQLOLEDB.1;Persist Security Info=False;User ID=%s;Password=%s;Initial Catalog=%s;Data Source=%s;',
                [Trim(sUserId),Trim(sPass),Trim(sDatabase),Trim(sServer)]);
AdoConnection.ConnectionString:=sConn;
AdoConnection.Connected:=true;

#4


SQLOLEDB.1  是什么? 我的好像是什么SQLEXPRESS

#5


CB里放置ADOConnection组件,Build一下连接字符串看看吧

#6


那几个%s具体应该写什么啊? 我的问题中数据库类型和数据库路径都写了的,给个直接可以用的 常字符串 吧  谢谢

#7


连接不上,提示“无效的授权说明”

#8


字符串,把变量传进去

#9


2005没有装过,偶就不知道了。
你确定sa和sa的密码正确么?

#10


连接SQL2005 跟你数据库文件的路径没有关系的
连接方法跟连接SQL2000一样的


ADOConnection1->Close() ;  
ADOConnection1->ConnectionString="Provider=SQLOLEDB.1;Password=123456;Persist Security Info=False;User ID=sa;";  
ADOConnection1->ConnectionString+="Initial Catalog=jc_data;"; //jc_data:数据库名字  
ADOConnection1->ConnectionString+="Data Source=202.103.96.112"; //202.103.96.112:服务器...  
ADOConnection1->Open() ;  

#11


数据库名字到底是什么啊?我要用ODBC导入先?  那具体怎么导入SQL Server 2005的数据库啊? 我只会导入Access的

#12


那Initial Catalog这里  在我这个例子中  应该写HelloSQLServer么?

#13


数据库名称

#14


我这个例子中数据库名称是HelloSQLServer么?
我没有用ODBC的

#15


先填写HelloSQLServer试试吧,应该可以的

#16


Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Initial Catalog=master;Data Source=LocalSQL

我刚测试了个,使用CB的ADOConnection Build的,可以用

master是sql自己的数据库

#17


哦  我试试。。 Data Source=LocalSQL  LocalSQL是个什么? 我填的Localhost行不行?

#18


Sql服务管理器 服务器名称 一般的可能是你电脑名称

#19


Ole DB 选择的是Miscrosoft Ole Db Provider For Sql Server

#20


额 我也是用的master  就是连不上啊,
难道是我Data Source填错了? 我是按照你写的LocalSQL填的,
我的电脑名称是这个  
82Z6ZLWO9ZMB0VG


Data Source=82Z6ZLWO9ZMB0VG
是这样写么?

#21


错误信息是   SQL Server不存在或拒绝访问

#22


用Sql自带的企业管理器能打开那个库么?

那么写可以的。

#23


如果我的身份验证是Windows身份验证我该怎么写呢?那个sa我搞不对

#24


你的第四张图片,ConnectionString右边按钮 Build一个就成了,当然要测试连接。

#25




    ADOConnection1->Close() ;
    ADOConnection1->ConnectionString="Provider=SQLOLEDB.1;Password=;Persist Security Info=False;User ID=82Z6ZLWO9ZMB0VG\Administrator;Initial Catalog=master;Data Source=82Z6ZLWO9ZMB0VG\SQLEXPRESS";
    ADOConnection1->Open();
    Application->MessageBox("OK!","hint",64);




我这么写的  就是连不上,纠结啊。。
回复下10楼, ADOConnection1->ConnectionString 不能用 +=

#26


Windows身份验证没有密码么?
Password=;  ??

#27


奇怪了。。同一个字符串  在第四张图中Build就能连上, 写成代码就不行。。

#28


没有登录密码

#29


它给我Build的字符串是

Provider=SQLOLEDB.1;
Integrated Security=SSPI;
Persist Security Info=False;
Initial Catalog=master;
Data Source=82Z6ZLWO9ZMB0VG\SQLEXPRESS

直接测试连接可以,写成代码的就不行。。。

#30


检查你的 ID 和 密码

#31


终于可以了!!

你们说的是对的  只是我犯了一个小错误



// 我把 Data Source=82Z6ZLWO9ZMB0VG\SQLEXPRESS 写成了
"Data Source=82Z6ZLWO9ZMB0VG\SQLEXPRESS"

// 应该是
"Data Source=82Z6ZLWO9ZMB0VG\\SQLEXPRESS"



谢谢二位了!!

#32


后面的...按钮按下不久出来了吗,再按步骤配置一下就好了啊!非常简单

#33


"Data Source=82Z6ZLWO9ZMB0VG\\SQLEXPRESS"其中一个\是转义用的!

引用 31 楼 direct4d 的回复:
终于可以了!!

你们说的是对的  只是我犯了一个小错误


C/C++ code

// 我把 Data Source=82Z6ZLWO9ZMB0VG\SQLEXPRESS 写成了
"Data Source=82Z6ZLWO9ZMB0VG\SQLEXPRESS"

// 应该是
"Data Source=82Z6ZLWO9ZMB0VG\\SQLEXPRESS"




谢谢二……