You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@iotdb.apache.org by qi...@apache.org on 2022/11/25 03:22:32 UTC
[iotdb-client-go] branch main updated: Support execute non query statement (#64)
This is an automated email from the ASF dual-hosted git repository.
qiaojialin pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/iotdb-client-go.git
The following commit(s) were added to refs/heads/main by this push:
new e7dcc09 Support execute non query statement (#64)
e7dcc09 is described below
commit e7dcc092f533bae3407f8f1908853b7f2c3702fa
Author: Haonan <hh...@outlook.com>
AuthorDate: Fri Nov 25 11:22:27 2022 +0800
Support execute non query statement (#64)
---
client/session.go | 19 +++++++++++++++++++
example/session_example.go | 7 +++++++
2 files changed, 26 insertions(+)
diff --git a/client/session.go b/client/session.go
index 01febb9..8bd08be 100644
--- a/client/session.go
+++ b/client/session.go
@@ -439,6 +439,25 @@ func (s *Session) ExecuteStatement(sql string) (*SessionDataSet, error) {
return s.genDataSet(sql, resp), err
}
+func (s *Session) ExecuteNonQueryStatement(sql string) (r *rpc.TSStatus, err error) {
+ request := rpc.TSExecuteStatementReq{
+ SessionId: s.sessionId,
+ Statement: sql,
+ StatementId: s.requestStatementId,
+ FetchSize: &s.config.FetchSize,
+ }
+ resp, err := s.client.ExecuteStatement(context.Background(), &request)
+
+ if err != nil && resp == nil {
+ if s.reconnect() {
+ request.SessionId = s.sessionId
+ resp, err = s.client.ExecuteStatement(context.Background(), &request)
+ }
+ }
+
+ return resp.Status, err
+}
+
func (s *Session) ExecuteQueryStatement(sql string, timeoutMs *int64) (*SessionDataSet, error) {
request := rpc.TSExecuteStatementReq{SessionId: s.sessionId, Statement: sql, StatementId: s.requestStatementId,
FetchSize: &s.config.FetchSize, Timeout: timeoutMs}
diff --git a/example/session_example.go b/example/session_example.go
index 5ce8cf9..6af3cb9 100644
--- a/example/session_example.go
+++ b/example/session_example.go
@@ -67,6 +67,9 @@ func main() {
createTimeseries("root.sg1.dev1.status")
deleteTimeseries("root.sg1.dev1.status")
+ createTimeseriesByNonQueryStatement("create timeseries root.sg1.dev1.status with datatype = int32")
+ deleteTimeseries("root.sg1.dev1.status")
+
createMultiTimeseries()
deleteTimeseries("root.sg1.dev1.temperature")
@@ -295,6 +298,10 @@ func createTimeseries(path string) {
checkError(session.CreateTimeseries(path, dataType, encoding, compressor, nil, nil))
}
+func createTimeseriesByNonQueryStatement(sql string) {
+ checkError(session.ExecuteNonQueryStatement(sql))
+}
+
func createAlignedTimeseries(prefixPath string, measurements, measurementAlias []string) {
var (
dataTypes = []client.TSDataType{