Skip to content

Commit 19b7527

Browse files
authored
Updated Go snippets
1 parent 816a712 commit 19b7527

File tree

1 file changed

+58
-44
lines changed

1 file changed

+58
-44
lines changed

src/components/ConnectToDB/snippets.ts

Lines changed: 58 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -33,54 +33,65 @@ export function getGoSnippetCode({database, endpoint}: SnippetParams) {
3333
return `package main
3434
3535
import (
36-
"context"
37-
"os"
36+
"context"
37+
"os"
3838
39-
"github.com/ydb-platform/ydb-go-sdk/v3"
40-
"github.com/ydb-platform/ydb-go-sdk/v3/table"
39+
"github.com/ydb-platform/ydb-go-sdk/v3"
4140
)
4241
4342
func main() {
44-
ctx, cancel := context.WithCancel(context.Background())
45-
defer cancel()
46-
db, err := ydb.Open(ctx,
47-
"${endpoint ?? '<endpoint>'}${database ?? '/<database>'}",
48-
ydb.WithAccessTokenCredentials(os.Getenv("YDB_ACCESS_TOKEN_CREDENTIALS")),
49-
)
50-
if err != nil {
51-
panic(err)
52-
}
43+
ctx, cancel := context.WithCancel(context.Background())
44+
defer cancel()
45+
46+
db, err := ydb.Open(context.Background(),
47+
"${endpoint ?? '<endpoint>'}${database ?? '/<database>'}",
48+
ydb.WithAccessTokenCredentials(os.Getenv("YDB_ACCESS_TOKEN_CREDENTIALS")),
49+
)
50+
if err != nil {
51+
panic(err)
52+
}
53+
54+
defer db.Close(ctx)
55+
56+
row, err := db.Query().QueryRow(ctx, "SELECT 'Hello, world!'")
57+
if err != nil {
58+
panic(err)
59+
}
60+
61+
var val string
62+
if err := row.Scan(&val); err != nil {
63+
panic(err)
64+
}
65+
66+
println(val)
67+
}`;
68+
}
5369

54-
defer db.Close(ctx)
55-
56-
err = db.Table().Do(ctx,
57-
func(ctx context.Context, s table.Session) error {
58-
_, res, err := s.Execute(
59-
ctx,
60-
table.TxControl(table.BeginTx(table.WithOnlineReadOnly()), table.CommitTx()),
61-
"SELECT 'Hello, world!'",
62-
nil,
63-
)
64-
if err != nil {
65-
return err
66-
}
67-
defer res.Close()
68-
var val string
69-
70-
for res.NextResultSet(ctx) {
71-
for res.NextRow() {
72-
err = res.Scan(&val)
73-
if err != nil {
74-
return err
75-
}
76-
println(val)
77-
}
78-
}
79-
return res.Err()
80-
})
81-
if err != nil {
82-
panic(err)
83-
}
70+
export function getGoDatabaseSqlSnippetCode({database, endpoint}: SnippetParams) {
71+
return `package main
72+
73+
import (
74+
"context"
75+
"database/sql"
76+
"os"
77+
78+
_ "github.com/ydb-platform/ydb-go-sdk/v3"
79+
)
80+
81+
func main() {
82+
db, err := sql.Open("ydb", "${endpoint ?? '<endpoint>'}${database ?? '/<database>'}"+"?token="+os.Getenv("YDB_ACCESS_TOKEN_CREDENTIALS"))
83+
if err != nil {
84+
panic(err)
85+
}
86+
87+
row := db.QueryRowContext(context.Background(), "SELECT 'Hello, world!'")
88+
89+
var val string
90+
if err := row.Scan(&val); err != nil {
91+
panic(err)
92+
}
93+
94+
println(val)
8495
}`;
8596
}
8697

@@ -212,9 +223,12 @@ export function getSnippetCode(lang: SnippetLanguage, rawParams: SnippetParams)
212223
case 'csharp': {
213224
return getCSharpSnippetCode(params);
214225
}
215-
case 'go': {
226+
case 'go (native SDK)': {
216227
return getGoSnippetCode(params);
217228
}
229+
case 'go (database/sql)': {
230+
return getGoDatabaseSqlSnippetCode(params);
231+
}
218232
case 'java': {
219233
return getJavaSnippetCode(params);
220234
}

0 commit comments

Comments
 (0)