|
21 | 21 |
|
22 | 22 | import openmldb.dbapi
|
23 | 23 |
|
| 24 | + |
24 | 25 | # dbapi接口如果执行失败,会抛出异常,本例不捕获异常,暴露错误
|
25 | 26 |
|
26 | 27 | # 连接集群版OpenMLDB
|
27 | 28 | db = openmldb.dbapi.connect(zk="127.0.0.1:2181", zkPath="/openmldb")
|
28 | 29 |
|
29 | 30 | # 连接单机版OpenMLDB
|
30 |
| -# db = openmldb.dbapi.connect(host="$host", port="$port") |
| 31 | +# db = openmldb.dbapi.connect(host="127.0.0.1", port="6527") |
31 | 32 |
|
32 | 33 | cursor = db.cursor()
|
33 | 34 |
|
|
104 | 105 |
|
105 | 106 | ### 3.2 创建数据库
|
106 | 107 | try:
|
107 |
| - connection.execute("CREATE DATABASE db1") |
| 108 | + connection.exec_driver_sql("CREATE DATABASE db1") |
108 | 109 | except Exception as e:
|
109 | 110 | print(e)
|
110 | 111 |
|
111 |
| -connection.execute("USE db1") |
| 112 | +connection.exec_driver_sql("USE db1") |
112 | 113 |
|
113 | 114 | ### 3.3 创建表
|
114 | 115 | try:
|
115 |
| - connection.execute( |
| 116 | + connection.exec_driver_sql( |
116 | 117 | "CREATE TABLE t1 ( col1 bigint, col2 date, col3 string, col4 string, col5 int, index(key=col3, ts=col1))"
|
117 | 118 | )
|
118 | 119 | except Exception as e:
|
119 | 120 | print(e)
|
120 | 121 |
|
121 | 122 | ### 3.4 插入数据到表中
|
122 | 123 | try:
|
123 |
| - connection.execute( |
| 124 | + connection.exec_driver_sql( |
124 | 125 | "INSERT INTO t1 VALUES(1000, '2020-12-25', 'guangdon', 'shenzhen', 1);"
|
125 | 126 | )
|
126 | 127 | except Exception as e:
|
127 | 128 | print(e)
|
128 | 129 |
|
129 |
| -# 使用`connection.execute(ddl, data)`接口执行带planceholder的SQL的插入语句,可以动态指定插入数据,也可插入多行: |
| 130 | +# 使用`connection.exec_driver_sql(ddl, data)`接口执行带planceholder的SQL的插入语句,可以动态指定插入数据,也可插入多行: |
130 | 131 | try:
|
131 | 132 | insert = "INSERT INTO t1 VALUES(1002, '2020-12-27', ?, ?, 3);"
|
132 |
| - connection.execute(insert, ({"col3": "fujian", "col4": "fuzhou"})) |
133 |
| - connection.execute( |
| 133 | + connection.exec_driver_sql(insert, ({"col3": "fujian", "col4": "fuzhou"})) |
| 134 | + connection.exec_driver_sql( |
134 | 135 | insert,
|
135 | 136 | [
|
136 | 137 | {"col3": "jiangsu", "col4": "nanjing"},
|
|
142 | 143 |
|
143 | 144 | ### 3.5 执行SQL批式查询
|
144 | 145 | try:
|
145 |
| - rs = connection.execute("SELECT * FROM t1") |
| 146 | + rs = connection.exec_driver_sql("SELECT * FROM t1") |
146 | 147 | for row in rs:
|
147 | 148 | print(row)
|
148 |
| - rs = connection.execute("SELECT * FROM t1 WHERE col3 = ?;", ("hefei")) |
149 |
| - rs = connection.execute( |
| 149 | + rs = connection.exec_driver_sql("SELECT * FROM t1 WHERE col3 = ?;", ("hefei")) |
| 150 | + rs = connection.exec_driver_sql( |
150 | 151 | "SELECT * FROM t1 WHERE col3 = ?;", [("hefei"), ("shanghai")]
|
151 | 152 | )
|
152 | 153 | except Exception as e:
|
|
155 | 156 |
|
156 | 157 | ### 3.6 执行SQL请求式查询
|
157 | 158 |
|
158 |
| -# 使用`connection.execute(sql, request)`接口执行SQL批式查询语句:请求式查询,可以把输入数据放到execute的第二个参数中 |
| 159 | +# 使用`connection.exec_driver_sql(sql, request)`接口执行SQL批式查询语句:请求式查询,可以把输入数据放到execute的第二个参数中 |
159 | 160 | try:
|
160 |
| - rs = connection.execute( |
| 161 | + rs = connection.exec_driver_sql( |
161 | 162 | "SELECT * FROM t1",
|
162 | 163 | (
|
163 | 164 | {
|
|
174 | 175 |
|
175 | 176 | ### 3.7 删除表
|
176 | 177 | try:
|
177 |
| - connection.execute("DROP TABLE t1") |
| 178 | + connection.exec_driver_sql("DROP TABLE t1") |
178 | 179 | except Exception as e:
|
179 | 180 | print(e)
|
180 | 181 |
|
181 | 182 | ### 3.8 删除数据库
|
182 | 183 | try:
|
183 |
| - connection.execute("DROP DATABASE db1") |
| 184 | + connection.exec_driver_sql("DROP DATABASE db1") |
184 | 185 | except Exception as e:
|
185 | 186 | print(e)
|
0 commit comments