不要追求绝对的公平,红尘之中没有公平而言,人活一世,难得糊涂。                                           it is no use doing what you like, you have got to like what you do.

SQABasic数据库命令

上一篇 / 下一篇  2007-01-08 11:59:45 / 个人分类:Robot技术

robot SQABasic数据库操作命令51Testing软件测试网S*\2S Zf
51Testing软件测试网~$mw"j2B3j(m
SQLClose 功能函数
!IU5gHm*`8J9L^0断开由SQLOpen确定的与ODBC数据源连接。
J7M8f,Z;e4N1h0SQLClose ( connection& )51Testing软件测试网&F*H-A$~'?#X
语法: 参数         解释51Testing软件测试网C0l AQ.D
connection& 由SQLOpen返回的一个长整型的名称参数。
@{ M+sBF0iU0注解:
(I K1I9S0Z(v'go0返回的是一个变量。成功返回0并连接随后关闭或断开。如果连接不正常,返回-1。
AIcOK0This example opens the data source named "SblTest," gets the names in the ODBC data sources, and closes the connection.51Testing软件测试网Y/gm$` [*p)Ll?
Sub main51Testing软件测试网ur'q[W/`
'   Declarations51Testing软件测试网3W:i5{ F_uLhsL
'51Testing软件测试网g)uT+x!d+|A#K
    Dim outputStr As String
7Y:G-?wZ0    Dim connection As Long51Testing软件测试网'S3n)?&@\a
    Dim prompt As Integer
inJ*rI0    Dim datasources(1 To 50) As Variant51Testing软件测试网/o#Q p4t_
    Dim retcode As Variant
L M(~&yR-\4IH0    Dim action1 as Integer51Testing软件测试网;Io0w;AC8g
    Dim qualifier as String51Testing软件测试网ysQM a3~P |
         51Testing软件测试网-G4dg)_)a-p
    prompt = 551Testing软件测试网!K1b6m qki
'   Open the datasource "SblTest"51Testing软件测试网/r(OuuA]O
    connection = SQLOpen("DSN=SblTest", outputStr, prompt:=5)
:tlFuQp0  51Testing软件测试网U%@|/u!xZ
    action1 = 1  ' Get the names of the ODBC datasources51Testing软件测试网 y3Mq$Er k
    retcode = SQLGetSchema(connection:=connection,action:=1, qualifier:=qualifier, ref:=datasources())51Testing软件测试网kVn r5I-q4a;t:f |oO?
'   Close the datasource connection51Testing软件测试网1|C&S q{ z
    retcode = SQLClose(connection)51Testing软件测试网!ad d?;v1oq||HK*Q
  51Testing软件测试网.@#uN,?c1B(e'L
End Sub51Testing软件测试网"L5Z Lg^,?/WM
51Testing软件测试网)v+H#Y`+F8edS#G
SQLError功能函数51Testing软件测试网bR)IDI.l7G
可以用来接收做ODBC函数调用时发生的多条错误的详细信息。为最近ODBC函数调用和连接返回错误信息。51Testing软件测试网 DG5k(K{j'GXF
SQLError ( destination() )
4h+c4c1M$a}lh@0语法: 参数          解释
*i,B$a3u8] |0destination() 两维数组的每行包含一个错误。名称参数是必要的,必须是变量的数组。
e0[T9`wQY'Nu4q%V0注解
Dg5X'jm k0没有返回值。域: 1) 表示ODBC错误类型/下级分类的字符串, 2)表示数据源错误编码的数字值, 3)表示错误的文本信息。51Testing软件测试网 [F3fo.g+{S[2}
如果没有错误从先前的ODBC函数调用发生,则0被返回到调用者数组的(1,1)里。如果数组不是2维的或不支持上面提到的三个域,则一个错误信息被返回到调用者数组的(1,1)里。
/DT(PHo0SQLError Example
nE%b].r#sb0This example forces an error to test SQLError function.51Testing软件测试网t6qZ Y$RQD%P
sub main
/]-{#Y*y NJj0'  Declarations51Testing软件测试网P["Z9^g y-jx
   Dim connection As long
o3|{7Wy$~D0   Dim prompt as integer
Y;z:Wk8f c2{"r/u+V0   Dim retcode as long51Testing软件测试网"O a1|/tb\%?E#Y
   Dim errors(1 To 3, 1 To 10) as Variant
I-j$hX_!N$@0   Dim outputStr as String
^;J#L a:V"} @ i6J0'  Open the datasource51Testing软件测试网4t;u;M*{q/f-i-BB
   connection = SQLOpen("DSN=SBLTESTW;UID=DBA;PWD=SQL",outputStr,prompt:=3)
~X/C*](pP`h%F0'  force an error to test SQLError select a nonexistent table51Testing软件测试网s"Cfb$H#U
   retcode = SQLExecQuery(connection:=connection,query:="select * from notable ")
0u4\uD D3tP|0'  Retrieve the detailed error message information into the errors array51Testing软件测试网;vTUVX~'y
   SQLError destination:=errors51Testing软件测试网L2F Pj:YU0MEJ
   retcode = SQLClose(connection)
e3X)`$X~ Z0end sub51Testing软件测试网 eUA-F*tL

)RgSxt t5t0SQLExecQuery Function
uEFY9ZW{x0在SQLOpen确定的连接上执行一个SQL语句。51Testing软件测试网?_eJN(KX C
SQLExecQuery ( connection& , query$ )51Testing软件测试网*YG:~J8K T
语法: 参数 解释51Testing软件测试网 f3g}dw'Oe3v8f;|g;l
connection& 指定参数、必须。长整形、由SQLOpen返回。
5U4G(M(}"^(u ^r0query$ 包含一个有效SQL语句的字符串,返回值是个变量。51Testing软件测试网_J)A;a ~f[?
注解:
+g.|!^5X w0对于SQL SELECT返回结果集的栏数目;对于UPDATE, INSERT, 或 DELETE返回受语句作用的行的数目。任何其它SQL语句返回0。如果函数在指定数据源不能执行此查询,或如果连接不可用,则返回为负的错误编码。
*W,sNC X6x*_0如果SQLExecQuery被调用但连接上还有一些未处理结果,则这些等待结果被新的结果所代替。51Testing软件测试网G.`6C9k!{N F
SQLExecQuery Example
T M1nOAS*NYt2_0This example performs a query on the data source.51Testing软件测试网)bFJ7s*ZuTSV
Sub main
E ZdqT v-_*m,[0'   Declarations51Testing软件测试网a5s`Rh%J
'51Testing软件测试网NK|+m8JdE
    Dim connection As Long51Testing软件测试网S:E6tP?]0~ T R
    Dim destination(1 To 50, 1 To 125)  As Variant51Testing软件测试网q g,a-P%m&JE
    Dim retcode As long
K#|,k!mcm)Z9k/Vm0    Dim outputStr as String
gt)}6} T@;PB`8X)A/f0    Dim query as String
Vae#g@v#Q9x)IT!z0T0'   open the connection51Testing软件测试网;q)qV,an)Y@e*BU%Mc
    connection = SQLOpen("DSN=SblTest",outputStr,prompt:=3)51Testing软件测试网(M4xC!Q ^%U ?7wP#Q
'51Testing软件测试网/d0UR$f:}}*d&{O c:aC5A
'   Execute the query51Testing软件测试网} Q9iWD^e
    query = "select * from customer"  51Testing软件测试网7f-EMY8HO+}'w7{
    retcode = SQLExecQuery(connection,query)51Testing软件测试网d9jE)e |_A+Q
'
E_h:b8M%e0'   retrieve the first 50 rows with the first 6 columns of each row into51Testing软件测试网#E[#f5z1u&r|
'   the array destination, omit row numbers and put column names in the
~+r)c^Q_4Z0'   first row of the array  51Testing软件测试网7dsc N;b
'51Testing软件测试网Fd1r/]$l4B)k'T i
    retcode = SQLRetrieve(connection:=connection,destination:=destination,columnNames:=1,rowNumbers:=0,maxRows:=50, maxColumns:=6,fetchFirst:=0)
0dp3m X,|0
uk4|7?@/Fe(CN4T0'   Get the next 50 rows of from the result set
,egc|7\8Aq4V9h0    retcode = SQLRetrieve(connection:=connection,destination:=destination,columnNames:=1,rowNumbers:=0,maxRows:=50, maxColumns:=6)51Testing软件测试网S@"|q/H
'   Close the connection
\M#BI#yy_0    retcode = SQLClose(connection)51Testing软件测试网 B!g y-k'hCUn)[
End Sub51Testing软件测试网1U/zw&Cp,@

)M KR{h0SQLGetSchema功能函数51Testing软件测试网+}\*E&D,x },`z
返回各类信息,包括数据源可用的信息,当前用户ID、表格名称、表格列的名称和类型、及其它数据源/数据库相关信息。51Testing软件测试网6e|C1\d;cb%[ [
SQLGetSchema (connection& , action% , qualifier$ , ref() )
&u0EP R;d3E0语法: 参数     解释51Testing软件测试网E;S5k}+BqM%n
connection& 由SQLOpen返回的一个长整形。51Testing软件测试网W#_(r9Y-?0iS
action%     必需项。51Testing软件测试网 ID7HF2t$T
qualifier$     必需项。51Testing软件测试网 E)pRrtudg a
ref()         动作请求的对应的结果的变量数组,必须有一个数组即使仅一个参数的一维数组。返回值是一个变量。
XUi)l6L6V+iD{0注解:51Testing软件测试网RO4i9CmC6m x
返回一个负数表示一个错误。如果请求信息不能被访问或连接不能用,将返回-1。目标数组必须适当地定制以支持动作或错误返回。动作2和3不是普遍被支持的。动作4返回所有表格并不支持权限使用。不是所有数据库产品和ODBC驱动支持所有动作。51Testing软件测试网A7e8l)K7K+T;D
动作对应解释表:51Testing软件测试网 N*fw;Sz+F:QE
动作 具体注释说明51Testing软件测试网8m E`'p} U/U'Z
1 现有可用数据源列表(dimension of ref() is one)51Testing软件测试网1nt-i;Kip#W
2 当前连接上的数据库列表(不支持)
z+Y)x"^p$U;h"_.@03 当前连接上数据库的所有者列表(不支持)
9iV4NF;X6q;\p3m04 指定连接上的表格列表
J \,`Q4l L8eCt+L6H05 由合法用户指定表格的栏列的列表(ref() 必须2维)。返回列栏名称和SQL数据类型。
)E*?0t5A~06 当前连接使用者的用户ID
C}V*T)My07 当前数据库的名称
gg\+]V#]08 当前连接的数据源的名称。
p-zu dT^]2Y09 数据源使用的DBMS的名称(例如Oracle)。
N@ZR;l q010 数据源的服务器名称
7GUX6YP011 数据源表示拥有者的术语
L Eq*nA ~ \S012 数据源表示表格的术语
'o2JNJ{r2K#lR S}[013 数据源表示合法用户的术语51Testing软件测试网3E-lq5N6^]6rv
14 数据源表示过程的术语51Testing软件测试网;n;b2t.n?n(i
51Testing软件测试网Y,~o6x8dGk"UI
SQLGetSchema Example51Testing软件测试网1zTm6G$[)m]-Q9d
This example opens the data source named "SblTest," gets the names in the ODBC data sources, and closes the connection.
F8i4C7t/iH%b:An"y9d0Sub main
\!zw#K(r`0'   Declarations51Testing软件测试网L3`@i F#e&`
'51Testing软件测试网,B[vviL
    Dim outputStr As String51Testing软件测试网rz1oW w M
    Dim connection As Long51Testing软件测试网6P+[ M~2VLz9tg8Q
    Dim prompt As Integer
\tMEc(s0    Dim datasources(1 To 50) As Variant51Testing软件测试网c sDOz| ]-C
    Dim retcode As Variant51Testing软件测试网g1W^y$mc]
    Dim action1 as Integer
O'U5Z"~$_#w0    Dim qualifier as String51Testing软件测试网`4h@f3rD
         
YLcAw J0    prompt = 551Testing软件测试网I[ C i ] s
'   Open the datasource "SblTest"
6u}/z CZ#T0    connection = SQLOpen("DSN=SblTest", outputStr, prompt:=5)
SFtua]U\feS0  
'v[q/tp3S/U4t0    action1 = 1  ' Get the names of the ODBC datasources
B:@ bH7k ~*NHSp0    retcode = SQLGetSchema(connection:=connection,action:=1, qualifier:=qualifier, ref:=datasources())51Testing软件测试网6k^m(FJ
'   Close the datasource connection
!OA`Y&h#m2dDlg0    retcode = SQLClose(connection)
3bW`)a;D m~ONX0  
^ jt}]YF0End Sub
!po'm c#o.gvi0
X%Y,z0w ^!vI+~/dm0SQLOpen 功能函数51Testing软件测试网P9F AM9@9@ii
建立一个到在connectStr里指定的ODBC数据源的连接并返回一个连接ID,并将完全的连接字符串赋予outputStr变量。如果连接不可用,返回ODBC错误的负数。
*i1o(k(q-Y0SQLOpen ( connectStr$ [ , outputStr$] [ , prompt%] )51Testing软件测试网%|I*I [I)O%G zE#g
语法: 参数 解释51Testing软件测试网,Iu {/ET"?
connectStr$ 指定参数,必须参数。
%wcoo;` CF0outputStr$ 可选51Testing软件测试网ui)Q0}B J8tG{V0ruu
prompt%  可选。Prompt指定何时驱动对话框出现。可选项:
$qP9J%o8y-k01 对话框永远出现51Testing软件测试网{uV9e-Q
2 说明不够充分以建立连接时打开驱动对话框
$f/vHptR;tL2nU03 同2,对话框内容为灰色,不能修改51Testing软件测试网\5V/fITTG
4 对话框不出现,连接不成功,则返回一个错误
1f!{{@X2HI ]0注解:51Testing软件测试网w(Xwu9F
关于connectStr的内容描述在ODBC微软程序员参考手册。典型字符串形式为"DSN=datasourcename; UID=myid;  PWD=mypassword"。返回长型long型。
ma(Q1z#@%sm;Y I3A)`"B0当prompt缺省时,SQLOpen使用2作为默认值。51Testing软件测试网Mzg OMc
SQLOpen Example51Testing软件测试网+s}es%Bu
This example opens the data source named "SblTest," gets the names in the ODBC data sources, and closes the connection.51Testing软件测试网on6uc z6p D,z&](j
Sub main51Testing软件测试网"e7s8h+a:vS
'   Declarations
q5Tk5H3^e4jZ0'
;S9kXve0    Dim outputStr As String51Testing软件测试网a2T3Be]V V.Q;^6s
    Dim connection As Long
'u f J/u)o!s#R0    Dim prompt As Integer
F$~+?lbw?0    Dim datasources(1 To 50) As Variant
!a?n S7hK0    Dim retcode As Variant
D/lUDKJ0    Dim action1 as Integer51Testing软件测试网%[ `2B9Z_"D%Q
    Dim qualifier as String
i j8gy ^/D$cZA0         
;Fi+lq}"R:y@q0    prompt = 5
-p G&Y5K%Xf-N\0'   Open the datasource "SblTest"
(j*C3g/c u'D*Q'c D0    connection = SQLOpen("DSN=SblTest", outputStr, prompt:=5)
df a{ V"vta uc0  51Testing软件测试网}m;N)? {~8[
    action1 = 1  ' Get the names of the ODBC datasources51Testing软件测试网:ec \ _j&c(N-T
    retcode = SQLGetSchema(connection:=connection,action:=1, qualifier:=qualifier, ref:=datasources())
)QL:Mr a I,i0'   Close the datasource connection
^K9Y*VX*xC7c#[Q0    retcode = SQLClose(connection)
U rPr-m;|-ZR,xK0  51Testing软件测试网ihb p_
End Sub

TAG: Robot 数据库 软件测试技术 命令 Robot技术 SQA

 

评分:0

我来说两句

Open Toolbar