SQLCHAR 的类型 是 BYTE
SQLCHAR * 的类型 才是 PChar你去掉 var 试试SQLConnect: function(ConnectionHandle: SQLHDBC;
ServerName: SQLCHAR;
NameLength1: SQLSMALLINT;
UserName: SQLCHAR;
NameLength2: SQLSMALLINT;
Authentication: SQLCHAR;
NameLength3: SQLSMALLINT): SQLRETURN;
SQLCHAR * 的类型 才是 PChar你去掉 var 试试SQLConnect: function(ConnectionHandle: SQLHDBC;
ServerName: SQLCHAR;
NameLength1: SQLSMALLINT;
UserName: SQLCHAR;
NameLength2: SQLSMALLINT;
Authentication: SQLCHAR;
NameLength3: SQLSMALLINT): SQLRETURN;
解决方案 »
- delphi 如何取断点的值
- 大侠们求救啊!!! 求枚举系统中目前可用的串口api的使用方法
- 一个连接数据库的问题
- 编写DLL时多个unit能调用全局变量吗?
- 请用各位有没有 Dev Express,Express Editors5 系列的中文版教学资料。
- [菜鸟问题]我如何都能让主form定义的过程在别的单元调用?搞了一天了,还是搞不定 :-<
- 关于rave预览的问题
- 请问怎么按照时间排序!难道用order by 时间字段 这样的语句不行吗?
- 谁知道Formula one控件如何连接数据库。
- 关于文件流的问题{帮帮忙啊}
- 有谁知道Font.style是何格式?
- 我爱大富翁,大富翁也爱我们,但是现在.....
var
a, b, c: PChar;
Rc: SQLRETURN;
begin
if OpenDialog1.Execute then
begin
A := PChar(OpenDialog1.FileName);
B := '';
C := '';
Rc := SQLConnect(dbHandle, A, Length(A),
B, Length(B),
C, Length(C));
结果执行时产生了非法访问错误???? 是我的参数不对吗?????
我想var并不一定是主要的, 我也想把它翻译成Byte型, 关键是翻译成Byte型后参数应该如何输入.
而不是 var ServerName:Pchar
B:string
C:stringA:= OpenDialog1.FileName
B:=''
C:=''
B:string
C:stringA:= OpenDialog1.FileName
B:=''
C:=''
在这之前要执行一个函数,得到一个FirstHandle, 将第一个Handle作为一个输入参数执行第二个函数得到第二个SecondHandle, SqlConnect是第三个函数, 它的第一个参数就是前面的SecondHandle, 前两个函数均正常调用结束, 到这里除了问题, 我认为是翻译时出的问题,但不敢肯定, 因此拿上来向各位大侠们请教, 请不吝赐教吧..............
在这之前要执行一个函数,得到一个FirstHandle, 将第一个Handle作为一个输入参数执行第二个函数得到第二个SecondHandle, SqlConnect是第三个函数, 它的第一个参数就是前面的SecondHandle, 前两个函数均正常调用结束, 到这里除了问题, 我认为是翻译时出的问题,但不敢肯定, 因此拿上来向各位大侠们请教, 请不吝赐教吧..............
在这之前要执行一个函数,得到一个FirstHandle, 将第一个Handle作为一个输入参数执行第二个函数得到第二个SecondHandle, SqlConnect是第三个函数, 它的第一个参数就是前面的SecondHandle, 前两个函数均正常调用结束, 到这里除了问题, 我认为是翻译时出的问题,但不敢肯定, 因此拿上来向各位大侠们请教, 请不吝赐教吧..............
我看了一下MSDN中的帮助,这个函数的几个参数都是 输入的,没有输出
只要你返回 SQL_SUCCESS 就应是正确的了,就可以用这个名柄继续下面的调用了.
其中 SQLCHAR *ServerName 应翻译成 ServerName : Pchar
http://www.csdn.net/expert/topicview1.asp?id=238812
这个帖子有详细介绍。
www.drbob42.com上有个工具专门辅助干这个的,你可以试试
应该是这个
http://www.csdn.net/expert/topic/238/238312.shtm
type SQL_CHAR = string; PSQL_CHAR = ^SQL_CHAR;
s:SQL_CHAR;
ps:PSQL_CHAR;s := 'abc';
ps := @s;
SQL_API SQLConnect( ConnectionHandle,@s,...)或
SQL_API SQLConnect( ConnectionHandle,ps,...)有一年没用DELPHI了,如不对请谅解。