返回首页

gbase数据、南大通用产品文档:GBase8sSQLStatistics(仅限一级)

更新日期:2024年09月11日

SQLStatistics 检索有关单个表的统计信息和与该表相关联的索引信息。
驱动程序将此消息作为结果集返回。
下表描述了 SQLStatistics 的 SQLSTATE 和错误值。
SQLSTATE
错误值
错误消息
01000
-11001
General warning
08S01
-11020
Communication-link failure

GBase 8s ODBC Driver 程序员指南
南大通用数据技术股份有限公司
- 241 -
SQLSTATE
错误值
错误消息
24000
-11031
Invalid cursor state
S1000
-11060
General error
S1001
-11061
Memory- allocation failure
S1008
-11065
Operation canceled
S1010
-11067
Function-sequence error
S1090
-11071
Invalid string or buffer length
S1100
-11081
Uniqueness option type out of range
S1101
-11082
Accuracy option type out of range
S1C00
-11092
Driver not capable
S1T00
-11094
Time-out expired
S1C00
-11300
SQL_DEFAULT_PARAM not supported
08S01
-11301
A protocol error has been detected. Current connection is
closed.
S1000
-11310
Create and Drop must be executed within a ServerOnly
Connection
S1000
-11320
Syntax error
S1000
-11323
The statement contained an escape clause not supported by
this database driver

获取或设置一个SQL 语句或者存储过程,用于更新数据源中的记录。

语法
[Visual Basic]
Public Property UpdateCommand As GBaseCommand

Get

Set



GBase 8a 程序员手册ADO.NET 篇
南大通用数据技术股份有限公司

- 197 -
[C#]
public GBaseCommand UpdateCommand {get; set;}

注释
在Update 时,如果这个属性没有设置且主键信息没有在DataSet 中,如果
用户设置了SelectCommand 属性并使用GBaseCommandBuilder,那么
UpdateCommand 可以自动生成。而后任何用户没有设置的命令会由
GBaseCommandBuilder 生成,这个生成逻辑需要在DataSet 中有主键信息。

示例
下面的例子中演示如何创建GBaseDataAdapter 对象并设置SelectCommand
和InsertCommand 属性。
[Visual Basic]
Public Shared Function CreateCustomerAdapter(conn As
GBaseConnection)_ As GBaseDataAdapter
Dim da As GBaseDataAdapter = New GBaseDataAdapter()
Dim cmd As GBaseCommand
Dim parm As GBaseParameter
' Create the SelectCommand.
cmd = New GBaseCommand("SELECT * FROM gstable WHERE id=?"_
&"id AND name=?name", conn)
cmd.Parameters.Add("?id", GBaseDbType.VarChar, 15)
cmd.Parameters.Add("?name", GBaseDbType.VarChar, 15)
da.SelectCommand = cmd
' Create the UpdateCommand.
cmd = New GBaseCommand("UPDATE gstable SET id=?id, name=?"_
&"name WHERE id=?oldId", conn)
cmd.Parameters.Add( "?id", GBaseDbType.VarChar, 15, "id" )
cmd.Parameters.Add( "?name", GBaseDbType.VarChar, 15, "name" )
parm = cmd.Parameters.Add("?oldId", GBaseDbType.VarChar, 15,
"id")
parm.SourceVersion = DataRowVersion.Original
da.UpdateCommand = cmd
Return da

GBase 8a 程序员手册ADO.NET 篇


- 198 -

南大通用数据技术股份有限公司
End Function

[C#]
public static GBaseDataAdapter
CreateCustomerAdapter(GbaseConnection conn)
{
GBaseDataAdapter da = new GBaseDataAdapter();
GBaseCommand cmd;
GBaseParameter parm;
// Create the SelectCommand.
cmd = new GBaseCommand("SELECT * FROM gstable WHERE id=?id AND
name=?name", conn);
cmd.Parameters.Add("?id", GBaseDbType.VarChar, 15);
cmd.Parameters.Add("?name", GBaseDbType.VarChar, 15);
da.SelectCommand = cmd;
// Create the UpdateCommand.
cmd = new GBaseCommand("UPDATE gstable SET id=?id, name=?name
WHERE id=?oldId", conn);
cmd.Parameters.Add("?id", GBaseDbType.VarChar, 15, "id" );
cmd.Parameters.Add("?name",
GBaseDbType.VarChar,
15,
"name"
);
parm = cmd.Parameters.Add( "?oldId", GBaseDbType.VarChar, 15,
"id" );
parm.SourceVersion = DataRowVersion.Original;
da.UpdateCommand = cmd;
return da;
}

API)
随同 admin() 或 task() 函数,使用 checkpoint 参数来强制一检查点。
语法

用法
这个函数强制一检查点,经缓冲区清空到磁盘。如果逻辑日志中最近的检查点记录阻止释
放逻辑日志文件(状态 U-B-L),则可使用这个函数来强制一检查点。
使用 block 参数来防止数据库服务器处理任何事物。在 GBase
8s 上使用这个选项执行外
部备份。在数据库服务器阻塞时,用户不可访问它,除非在只读模式中。直到解除数据库
服务器阻塞,事务才可完成。
使用 hard 参数来强制一阻塞检查点。这是缺省情况。
使用 norm 参数来强制一非阻塞检查点。
使用 unblock 参数来解除数据库服务器阻塞。当解除数据库服务器阻塞时,可恢复数据事
务和正常的数据库服务器操作。请在 GBase 8s 上完成外部备份之后使用这个选项。
这个函数等同于 onmode -c 命令。
示例
下列示例启用一阻塞检查点:
EXECUTE FUNCTION task("checkpoint","block");