SQABasic数据库命令(续)
上一篇 / 下一篇 2007-02-05 16:02:56 / 个人分类:Robot技术
SQLRequest功能函数51Testing软件测试网b0qyeM-lN4P P
建立一个由connectionStr指定数据源的连接,执行包含在query内的SQL语句,返回请求的结果到ref()数组里,并关闭连接。51Testing软件测试网?;E!n Y"a"rj5A Es8M
SQLRequest( connectionStr$ , query$ , outputStr$ , prompt% , columnNames% , ref() )51Testing软件测试网"V No(Wv#h0]U'_
语法: 参数 解释51Testing软件测试网,LML\(^Ru
connectionStr$ 必需项。51Testing软件测试网-cnl$K~GE3VE1o;]*S
query$ 必需项51Testing软件测试网Y6ah"~dB8Q6xU
outputStr$ 包含完整连接字符串。51Testing软件测试网2F ^zgk,qe7_
prompt% Prompt指定何时驱动对话框出现。一个整数。(查看SQLOpen).
IS rMW$K5e6i1Mq0columnNames% 0或非0的一个整数。当columnNames为非0,栏列名称作为ref()数组的第一行被返回。如果columnNames缺省,默认值为0。51Testing软件测试网 l(Wn'jS/O5^\
ref() 必需项,2维变量数组。
IA;r*CY#LP0注解:
mQ3jG!K_ ]L0在连接不能被建立、查询不能用、或其它错误的情况下,返回一个负数。在请求成功情况下返回正数或受影响的行数。其它SQL语句返回0。51Testing软件测试网6lziNZ HBC [
参数是必需的参数。结果为变量。
1A*?i b w2ou8t0SQLRequest Example
3WAI6dTs0This example will open the datasource SBLTESTW and execute the query specified by query and return the results in destination51Testing软件测试网$c|#R!L9F9i+is
Sub main
fmu-TXw Z p3a+Z0' Declarations
*Fd+kg%M.}lS;s0'51Testing软件测试网6CO @bD^ O;V6K8l
Dim destination(1 To 50, 1 To 125) As Variant51Testing软件测试网)qK FEw;yJ
Dim prompt As integer
tZ8\A Oo8f;H F0 Dim retcode as Variant51Testing软件测试网o{t5TG
Dim query as String51Testing软件测试网F%T U2z w
Dim outputStr as String51Testing软件测试网cQ kb(wVn'~
*`TOI{3V q pe0' The following will open the datasource SBLTESTW and execute the query
~1s&E0_kP9qr0' specified by query and return the results in destination51Testing软件测试网 ^IU"U:O
'
tZ'q0hE0 query = "select * from class"
#{p0r-?,L }wz%C4b0 retcode = SQLRequest("DSN=SBLTESTW;UID=DBA;PWD=SQL",query,outputStr,prompt,0,destination())
g5J7K BiG;U0End Sub
6Ql0N"~3KW:i051Testing软件测试网8Rw,W@0E9{Y0z
SQLRetrieve 功能函数
mO#g ^&c;FLa3|0在由connection指定的连接上获取待定查询结果并将结果返回到destination()数组里。51Testing软件测试网9jr,LP'rv5ru#M]
SQLRetrieve( connection& , destination() , maxColumns% , maxRows% , columnNames% , rowNumbers% , fetchFirst% )51Testing软件测试网"G?N+C5N|4e
语法:51Testing软件测试网)i&@0nl'F2}/dQJ)t4K
参 数 解 释51Testing软件测试网 N!t8LEtl[M
connection& 长型long51Testing软件测试网r)O8y E v!Y%lP
destination() 2维变量数组51Testing软件测试网Y4Mo;hMqQz%zAm
maxColumns% 整形,可选参数,用来指定在查询中取回的栏列数目51Testing软件测试网ri#S7A8MW&X5_|X%i
maxRows% 整形,可选参数,用来指定在查询中取回的行的数目
rNqj3cE ]0columnNames% 整形,可选参数,默认为0
Di3\ R0r$KO0rowNumbers% 整形,可选参数,默认为051Testing软件测试网KS0u2i[R(J
fetchFirst% 整形,可选参数,默认为0
Z8m.Vr'PAc@J@L w!P0注解:51Testing软件测试网PjP `y6m
返回值是结果集的行的数目或请求的最大行。如果函数不能在指定连接上获得结果,返回-1。如果没有发现数据,函数返回0。51Testing软件测试网\Fw+zHQM
参数是必需参数。返回变量。51Testing软件测试网5f}DR k\-K8V
如果maxColumns或maxRows被缺省,数组大小被用来确定获得的行列的最大数目,并返回整个结果集是一个尝试。通过再次使用 SQLRetrieve和把fetchFirst设置为0,额外行可以被获得。如果maxColumns指定比结果中可用的更少的列, SQLRetrieve抛弃右边结果列只到结果与指定大小相适合。51Testing软件测试网`2u8M!`sEP dJ
当columnNames是非0,数组的第1行将放置数据库计划(database schema)指定的列名称。 当 rowNumbers是非0,行数目返回到destination()的第1列。SQLRetrieve将清空用户的数组来获得结果。
F,}vnvrI)B0当fetchFirst 是非0,它将结果重新配置到第一行,前提是如果数据库支持此功能。如果数据库不支持此功能,结果设置 –1错误被返回。51Testing软件测试网 Q@8d-jr%Kg/f-Q
如果结果集有比可以被destination()数组包含还多的行或比用maxRows请求还多的行,用户可以重复调用SQLRetrieve只到返回值为0为止。
b c+ti.s4S'RW0SQLRetrieve Example51Testing软件测试网f&y0\_+c(~*figl
This example retrieves information from a data source.51Testing软件测试网w$a,~Rzl
Sub main51Testing软件测试网g*Lv X#J3b6|)J
' Declarations51Testing软件测试网1W-fBm7`U,@
'
jN;{#H5_QK)g,P0 Dim connection As Long51Testing软件测试网V ?E\5V)v~gT$n
Dim destination(1 To 50, 1 To 125) As Variant
z;Q!m}+oti'Y(p0 Dim retcode As long51Testing软件测试网,J VA"AO.W^
Dim query as String
F@n4\.B t4Grq(v4n0 Dim outputStr as String51Testing软件测试网3D V IX0V
connection = SQLOpen("DSN=SblTest",outputStr,prompt:=3)
A(Wm @_3U&I$~0'51Testing软件测试网_\c*Pc.n%A
' Execute the query
建立一个由connectionStr指定数据源的连接,执行包含在query内的SQL语句,返回请求的结果到ref()数组里,并关闭连接。51Testing软件测试网?;E!n Y"a"rj5A Es8M
SQLRequest( connectionStr$ , query$ , outputStr$ , prompt% , columnNames% , ref() )51Testing软件测试网"V No(Wv#h0]U'_
语法: 参数 解释51Testing软件测试网,LML\(^Ru
connectionStr$ 必需项。51Testing软件测试网-cnl$K~GE3VE1o;]*S
query$ 必需项51Testing软件测试网Y6ah"~dB8Q6xU
outputStr$ 包含完整连接字符串。51Testing软件测试网2F ^zgk,qe7_
prompt% Prompt指定何时驱动对话框出现。一个整数。(查看SQLOpen).
IS rMW$K5e6i1Mq0columnNames% 0或非0的一个整数。当columnNames为非0,栏列名称作为ref()数组的第一行被返回。如果columnNames缺省,默认值为0。51Testing软件测试网 l(Wn'jS/O5^\
ref() 必需项,2维变量数组。
IA;r*CY#LP0注解:
mQ3jG!K_ ]L0在连接不能被建立、查询不能用、或其它错误的情况下,返回一个负数。在请求成功情况下返回正数或受影响的行数。其它SQL语句返回0。51Testing软件测试网6lziNZ HBC [
参数是必需的参数。结果为变量。
1A*?i b w2ou8t0SQLRequest Example
3WAI6dTs0This example will open the datasource SBLTESTW and execute the query specified by query and return the results in destination51Testing软件测试网$c|#R!L9F9i+is
Sub main
fmu-TXw Z p3a+Z0' Declarations
*Fd+kg%M.}lS;s0'51Testing软件测试网6CO @bD^ O;V6K8l
Dim destination(1 To 50, 1 To 125) As Variant51Testing软件测试网)qK FEw;yJ
Dim prompt As integer
tZ8\A Oo8f;H F0 Dim retcode as Variant51Testing软件测试网o{t5TG
Dim query as String51Testing软件测试网F%T U2z w
Dim outputStr as String51Testing软件测试网cQ kb(wVn'~
*`TOI{3V q pe0' The following will open the datasource SBLTESTW and execute the query
~1s&E0_kP9qr0' specified by query and return the results in destination51Testing软件测试网 ^IU"U:O
'
tZ'q0hE0 query = "select * from class"
#{p0r-?,L }wz%C4b0 retcode = SQLRequest("DSN=SBLTESTW;UID=DBA;PWD=SQL",query,outputStr,prompt,0,destination())
g5J7K BiG;U0End Sub
6Ql0N"~3KW:i051Testing软件测试网8Rw,W@0E9{Y0z
SQLRetrieve 功能函数
mO#g ^&c;FLa3|0在由connection指定的连接上获取待定查询结果并将结果返回到destination()数组里。51Testing软件测试网9jr,LP'rv5ru#M]
SQLRetrieve( connection& , destination() , maxColumns% , maxRows% , columnNames% , rowNumbers% , fetchFirst% )51Testing软件测试网"G?N+C5N|4e
语法:51Testing软件测试网)i&@0nl'F2}/dQJ)t4K
参 数 解 释51Testing软件测试网 N!t8LEtl[M
connection& 长型long51Testing软件测试网r)O8y E v!Y%lP
destination() 2维变量数组51Testing软件测试网Y4Mo;hMqQz%zAm
maxColumns% 整形,可选参数,用来指定在查询中取回的栏列数目51Testing软件测试网ri#S7A8MW&X5_|X%i
maxRows% 整形,可选参数,用来指定在查询中取回的行的数目
rNqj3cE ]0columnNames% 整形,可选参数,默认为0
Di3\ R0r$KO0rowNumbers% 整形,可选参数,默认为051Testing软件测试网KS0u2i[R(J
fetchFirst% 整形,可选参数,默认为0
Z8m.Vr'PAc@J@L w!P0注解:51Testing软件测试网PjP `y6m
返回值是结果集的行的数目或请求的最大行。如果函数不能在指定连接上获得结果,返回-1。如果没有发现数据,函数返回0。51Testing软件测试网\Fw+zHQM
参数是必需参数。返回变量。51Testing软件测试网5f}DR k\-K8V
如果maxColumns或maxRows被缺省,数组大小被用来确定获得的行列的最大数目,并返回整个结果集是一个尝试。通过再次使用 SQLRetrieve和把fetchFirst设置为0,额外行可以被获得。如果maxColumns指定比结果中可用的更少的列, SQLRetrieve抛弃右边结果列只到结果与指定大小相适合。51Testing软件测试网`2u8M!`sEP dJ
当columnNames是非0,数组的第1行将放置数据库计划(database schema)指定的列名称。 当 rowNumbers是非0,行数目返回到destination()的第1列。SQLRetrieve将清空用户的数组来获得结果。
F,}vnvrI)B0当fetchFirst 是非0,它将结果重新配置到第一行,前提是如果数据库支持此功能。如果数据库不支持此功能,结果设置 –1错误被返回。51Testing软件测试网 Q@8d-jr%Kg/f-Q
如果结果集有比可以被destination()数组包含还多的行或比用maxRows请求还多的行,用户可以重复调用SQLRetrieve只到返回值为0为止。
b c+ti.s4S'RW0SQLRetrieve Example51Testing软件测试网f&y0\_+c(~*figl
This example retrieves information from a data source.51Testing软件测试网w$a,~Rzl
Sub main51Testing软件测试网g*Lv X#J3b6|)J
' Declarations51Testing软件测试网1W-fBm7`U,@
'
jN;{#H5_QK)g,P0 Dim connection As Long51Testing软件测试网V ?E\5V)v~gT$n
Dim destination(1 To 50, 1 To 125) As Variant
z;Q!m}+oti'Y(p0 Dim retcode As long51Testing软件测试网,J VA"AO.W^
Dim query as String
F@n4\.B t4Grq(v4n0 Dim outputStr as String51Testing软件测试网3D V IX0V
connection = SQLOpen("DSN=SblTest",outputStr,prompt:=3)
A(Wm @_3U&I$~0'51Testing软件测试网_\c*Pc.n%A
' Execute the query