1<html><body> 2<style> 3 4body, h1, h2, h3, div, span, p, pre, a { 5 margin: 0; 6 padding: 0; 7 border: 0; 8 font-weight: inherit; 9 font-style: inherit; 10 font-size: 100%; 11 font-family: inherit; 12 vertical-align: baseline; 13} 14 15body { 16 font-size: 13px; 17 padding: 1em; 18} 19 20h1 { 21 font-size: 26px; 22 margin-bottom: 1em; 23} 24 25h2 { 26 font-size: 24px; 27 margin-bottom: 1em; 28} 29 30h3 { 31 font-size: 20px; 32 margin-bottom: 1em; 33 margin-top: 1em; 34} 35 36pre, code { 37 line-height: 1.5; 38 font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace; 39} 40 41pre { 42 margin-top: 0.5em; 43} 44 45h1, h2, h3, p { 46 font-family: Arial, sans serif; 47} 48 49h1, h2, h3 { 50 border-bottom: solid #CCC 1px; 51} 52 53.toc_element { 54 margin-top: 0.5em; 55} 56 57.firstline { 58 margin-left: 2 em; 59} 60 61.method { 62 margin-top: 1em; 63 border: solid 1px #CCC; 64 padding: 1em; 65 background: #EEE; 66} 67 68.details { 69 font-weight: bold; 70 font-size: 14px; 71} 72 73</style> 74 75<h1><a href="bigquery_v2.html">BigQuery API</a> . <a href="bigquery_v2.routines.html">routines</a></h1> 76<h2>Instance Methods</h2> 77<p class="toc_element"> 78 <code><a href="#delete">delete(projectId, datasetId, routineId)</a></code></p> 79<p class="firstline">Deletes the routine specified by routineId from the dataset.</p> 80<p class="toc_element"> 81 <code><a href="#get">get(projectId, datasetId, routineId, fieldMask=None)</a></code></p> 82<p class="firstline">Gets the specified routine resource by routine ID.</p> 83<p class="toc_element"> 84 <code><a href="#insert">insert(projectId, datasetId, body)</a></code></p> 85<p class="firstline">Creates a new routine in the dataset.</p> 86<p class="toc_element"> 87 <code><a href="#list">list(projectId, datasetId, pageToken=None, maxResults=None)</a></code></p> 88<p class="firstline">Lists all routines in the specified dataset. Requires the READER dataset</p> 89<p class="toc_element"> 90 <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p> 91<p class="firstline">Retrieves the next page of results.</p> 92<p class="toc_element"> 93 <code><a href="#update">update(projectId, datasetId, routineId, body)</a></code></p> 94<p class="firstline">Updates information in an existing routine. The update method replaces the</p> 95<h3>Method Details</h3> 96<div class="method"> 97 <code class="details" id="delete">delete(projectId, datasetId, routineId)</code> 98 <pre>Deletes the routine specified by routineId from the dataset. 99 100Args: 101 projectId: string, Project ID of the routine to delete (required) 102 datasetId: string, Dataset ID of the routine to delete (required) 103 routineId: string, Routine ID of the routine to delete (required) 104</pre> 105</div> 106 107<div class="method"> 108 <code class="details" id="get">get(projectId, datasetId, routineId, fieldMask=None)</code> 109 <pre>Gets the specified routine resource by routine ID. 110 111Args: 112 projectId: string, Project ID of the requested routine (required) 113 datasetId: string, Dataset ID of the requested routine (required) 114 routineId: string, Routine ID of the requested routine (required) 115 fieldMask: string, If set, only the Routine fields in the field mask are returned in the 116response. If unset, all Routine fields are returned. 117 118Returns: 119 An object of the form: 120 121 { # A user-defined function or a stored procedure. 122 "routineType": "A String", # Required. 123 "language": "A String", # Optional. Defaults to "SQL". 124 "creationTime": "A String", # Output only. The time when this routine was created, in milliseconds since 125 # the epoch. 126 "importedLibraries": [ # Optional. If language = "JAVASCRIPT", this field stores the path of the 127 # imported JAVASCRIPT libraries. 128 "A String", 129 ], 130 "routineReference": { # Required. Reference describing the ID of this routine. 131 "projectId": "A String", # [Required] The ID of the project containing this routine. 132 "routineId": "A String", # [Required] The ID of the routine. The ID must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_). The maximum length is 256 characters. 133 "datasetId": "A String", # [Required] The ID of the dataset containing this routine. 134 }, 135 "etag": "A String", # Output only. A hash of this resource. 136 "arguments": [ # Optional. 137 { # Input/output argument of a function or a stored procedure. 138 "dataType": { # The type of a variable, e.g., a function argument. # Required unless argument_kind = ANY_TYPE. 139 # Examples: 140 # INT64: {type_kind="INT64"} 141 # ARRAY<STRING>: {type_kind="ARRAY", array_element_type="STRING"} 142 # STRUCT<x STRING, y ARRAY<DATE>>: 143 # {type_kind="STRUCT", 144 # struct_type={fields=[ 145 # {name="x", type={type_kind="STRING"}}, 146 # {name="y", type={type_kind="ARRAY", array_element_type="DATE"}} 147 # ]}} 148 "structType": { # The fields of this struct, in order, if type_kind = "STRUCT". 149 "fields": [ 150 # Object with schema name: StandardSqlField 151 ], 152 }, 153 "arrayElementType": # Object with schema name: StandardSqlDataType # The type of the array's elements, if type_kind = "ARRAY". 154 "typeKind": "A String", # Required. The top level type of this field. 155 # Can be any standard SQL data type (e.g., "INT64", "DATE", "ARRAY"). 156 }, 157 "argumentKind": "A String", # Optional. Defaults to FIXED_TYPE. 158 "mode": "A String", # Optional. Specifies whether the argument is input or output. 159 # Can be set for procedures only. 160 "name": "A String", # Optional. The name of this argument. Can be absent for function return 161 # argument. 162 }, 163 ], 164 "returnType": { # The type of a variable, e.g., a function argument. # Optional if language = "SQL"; required otherwise. 165 # If absent, the return type is inferred from definition_body at query time 166 # in each query that references this routine. If present, then the evaluated 167 # result will be cast to the specified returned type at query time. 168 # 169 # For example, for the functions created with the following statements 170 # CREATE FUNCTION Add(x FLOAT64, y FLOAT64) RETURNS FLOAT64 AS (x + y); 171 # CREATE FUNCTION Increment(x FLOAT64) AS (Add(x, 1)); 172 # CREATE FUNCTION Decrement(x FLOAT64) RETURNS FLOAT64 AS (Add(x, -1)); 173 # The return_type is {type_kind: "FLOAT64"} for Add and Decrement, and 174 # is absent for Increment (inferred as FLOAT64 at query time). 175 # Suppose the function Add is replaced by 176 # CREATE OR REPLACE FUNCTION Add(x INT64, y INT64) AS (x + y); 177 # Then the inferred return type of Increment is automatically changed to 178 # INT64 at query time, while the return type of Decrement remains FLOAT64. 179 # Examples: 180 # INT64: {type_kind="INT64"} 181 # ARRAY<STRING>: {type_kind="ARRAY", array_element_type="STRING"} 182 # STRUCT<x STRING, y ARRAY<DATE>>: 183 # {type_kind="STRUCT", 184 # struct_type={fields=[ 185 # {name="x", type={type_kind="STRING"}}, 186 # {name="y", type={type_kind="ARRAY", array_element_type="DATE"}} 187 # ]}} 188 "structType": { # The fields of this struct, in order, if type_kind = "STRUCT". 189 "fields": [ 190 # Object with schema name: StandardSqlField 191 ], 192 }, 193 "arrayElementType": # Object with schema name: StandardSqlDataType # The type of the array's elements, if type_kind = "ARRAY". 194 "typeKind": "A String", # Required. The top level type of this field. 195 # Can be any standard SQL data type (e.g., "INT64", "DATE", "ARRAY"). 196 }, 197 "lastModifiedTime": "A String", # Output only. The time when this routine was last modified, in milliseconds 198 # since the epoch. 199 "definitionBody": "A String", # Required. The body of the routine. 200 # For functions, this is the expression in the AS clause. 201 # If language=SQL, it is the substring inside (but excluding) the 202 # parentheses. For example, for the function created with the following 203 # statement 204 # create function JoinLines(x string, y string) as (concat(x, "\n", y)) 205 # definition_body = r'concat(x, "\n", y)' (\n is not replaced with 206 # linebreak). 207 # If language=JAVASCRIPT, it is the evaluated string in the AS clause. 208 # For example, for the function created with the following statement 209 # CREATE FUNCTION f() RETURNS STRING LANGUAGE js AS 'return "\n";\n' 210 # definition_body = 'return "\n";\n' (both \n are replaced with 211 # linebreaks). 212 }</pre> 213</div> 214 215<div class="method"> 216 <code class="details" id="insert">insert(projectId, datasetId, body)</code> 217 <pre>Creates a new routine in the dataset. 218 219Args: 220 projectId: string, Project ID of the new routine (required) 221 datasetId: string, Dataset ID of the new routine (required) 222 body: object, The request body. (required) 223 The object takes the form of: 224 225{ # A user-defined function or a stored procedure. 226 "routineType": "A String", # Required. 227 "language": "A String", # Optional. Defaults to "SQL". 228 "creationTime": "A String", # Output only. The time when this routine was created, in milliseconds since 229 # the epoch. 230 "importedLibraries": [ # Optional. If language = "JAVASCRIPT", this field stores the path of the 231 # imported JAVASCRIPT libraries. 232 "A String", 233 ], 234 "routineReference": { # Required. Reference describing the ID of this routine. 235 "projectId": "A String", # [Required] The ID of the project containing this routine. 236 "routineId": "A String", # [Required] The ID of the routine. The ID must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_). The maximum length is 256 characters. 237 "datasetId": "A String", # [Required] The ID of the dataset containing this routine. 238 }, 239 "etag": "A String", # Output only. A hash of this resource. 240 "arguments": [ # Optional. 241 { # Input/output argument of a function or a stored procedure. 242 "dataType": { # The type of a variable, e.g., a function argument. # Required unless argument_kind = ANY_TYPE. 243 # Examples: 244 # INT64: {type_kind="INT64"} 245 # ARRAY<STRING>: {type_kind="ARRAY", array_element_type="STRING"} 246 # STRUCT<x STRING, y ARRAY<DATE>>: 247 # {type_kind="STRUCT", 248 # struct_type={fields=[ 249 # {name="x", type={type_kind="STRING"}}, 250 # {name="y", type={type_kind="ARRAY", array_element_type="DATE"}} 251 # ]}} 252 "structType": { # The fields of this struct, in order, if type_kind = "STRUCT". 253 "fields": [ 254 # Object with schema name: StandardSqlField 255 ], 256 }, 257 "arrayElementType": # Object with schema name: StandardSqlDataType # The type of the array's elements, if type_kind = "ARRAY". 258 "typeKind": "A String", # Required. The top level type of this field. 259 # Can be any standard SQL data type (e.g., "INT64", "DATE", "ARRAY"). 260 }, 261 "argumentKind": "A String", # Optional. Defaults to FIXED_TYPE. 262 "mode": "A String", # Optional. Specifies whether the argument is input or output. 263 # Can be set for procedures only. 264 "name": "A String", # Optional. The name of this argument. Can be absent for function return 265 # argument. 266 }, 267 ], 268 "returnType": { # The type of a variable, e.g., a function argument. # Optional if language = "SQL"; required otherwise. 269 # If absent, the return type is inferred from definition_body at query time 270 # in each query that references this routine. If present, then the evaluated 271 # result will be cast to the specified returned type at query time. 272 # 273 # For example, for the functions created with the following statements 274 # CREATE FUNCTION Add(x FLOAT64, y FLOAT64) RETURNS FLOAT64 AS (x + y); 275 # CREATE FUNCTION Increment(x FLOAT64) AS (Add(x, 1)); 276 # CREATE FUNCTION Decrement(x FLOAT64) RETURNS FLOAT64 AS (Add(x, -1)); 277 # The return_type is {type_kind: "FLOAT64"} for Add and Decrement, and 278 # is absent for Increment (inferred as FLOAT64 at query time). 279 # Suppose the function Add is replaced by 280 # CREATE OR REPLACE FUNCTION Add(x INT64, y INT64) AS (x + y); 281 # Then the inferred return type of Increment is automatically changed to 282 # INT64 at query time, while the return type of Decrement remains FLOAT64. 283 # Examples: 284 # INT64: {type_kind="INT64"} 285 # ARRAY<STRING>: {type_kind="ARRAY", array_element_type="STRING"} 286 # STRUCT<x STRING, y ARRAY<DATE>>: 287 # {type_kind="STRUCT", 288 # struct_type={fields=[ 289 # {name="x", type={type_kind="STRING"}}, 290 # {name="y", type={type_kind="ARRAY", array_element_type="DATE"}} 291 # ]}} 292 "structType": { # The fields of this struct, in order, if type_kind = "STRUCT". 293 "fields": [ 294 # Object with schema name: StandardSqlField 295 ], 296 }, 297 "arrayElementType": # Object with schema name: StandardSqlDataType # The type of the array's elements, if type_kind = "ARRAY". 298 "typeKind": "A String", # Required. The top level type of this field. 299 # Can be any standard SQL data type (e.g., "INT64", "DATE", "ARRAY"). 300 }, 301 "lastModifiedTime": "A String", # Output only. The time when this routine was last modified, in milliseconds 302 # since the epoch. 303 "definitionBody": "A String", # Required. The body of the routine. 304 # For functions, this is the expression in the AS clause. 305 # If language=SQL, it is the substring inside (but excluding) the 306 # parentheses. For example, for the function created with the following 307 # statement 308 # create function JoinLines(x string, y string) as (concat(x, "\n", y)) 309 # definition_body = r'concat(x, "\n", y)' (\n is not replaced with 310 # linebreak). 311 # If language=JAVASCRIPT, it is the evaluated string in the AS clause. 312 # For example, for the function created with the following statement 313 # CREATE FUNCTION f() RETURNS STRING LANGUAGE js AS 'return "\n";\n' 314 # definition_body = 'return "\n";\n' (both \n are replaced with 315 # linebreaks). 316 } 317 318 319Returns: 320 An object of the form: 321 322 { # A user-defined function or a stored procedure. 323 "routineType": "A String", # Required. 324 "language": "A String", # Optional. Defaults to "SQL". 325 "creationTime": "A String", # Output only. The time when this routine was created, in milliseconds since 326 # the epoch. 327 "importedLibraries": [ # Optional. If language = "JAVASCRIPT", this field stores the path of the 328 # imported JAVASCRIPT libraries. 329 "A String", 330 ], 331 "routineReference": { # Required. Reference describing the ID of this routine. 332 "projectId": "A String", # [Required] The ID of the project containing this routine. 333 "routineId": "A String", # [Required] The ID of the routine. The ID must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_). The maximum length is 256 characters. 334 "datasetId": "A String", # [Required] The ID of the dataset containing this routine. 335 }, 336 "etag": "A String", # Output only. A hash of this resource. 337 "arguments": [ # Optional. 338 { # Input/output argument of a function or a stored procedure. 339 "dataType": { # The type of a variable, e.g., a function argument. # Required unless argument_kind = ANY_TYPE. 340 # Examples: 341 # INT64: {type_kind="INT64"} 342 # ARRAY<STRING>: {type_kind="ARRAY", array_element_type="STRING"} 343 # STRUCT<x STRING, y ARRAY<DATE>>: 344 # {type_kind="STRUCT", 345 # struct_type={fields=[ 346 # {name="x", type={type_kind="STRING"}}, 347 # {name="y", type={type_kind="ARRAY", array_element_type="DATE"}} 348 # ]}} 349 "structType": { # The fields of this struct, in order, if type_kind = "STRUCT". 350 "fields": [ 351 # Object with schema name: StandardSqlField 352 ], 353 }, 354 "arrayElementType": # Object with schema name: StandardSqlDataType # The type of the array's elements, if type_kind = "ARRAY". 355 "typeKind": "A String", # Required. The top level type of this field. 356 # Can be any standard SQL data type (e.g., "INT64", "DATE", "ARRAY"). 357 }, 358 "argumentKind": "A String", # Optional. Defaults to FIXED_TYPE. 359 "mode": "A String", # Optional. Specifies whether the argument is input or output. 360 # Can be set for procedures only. 361 "name": "A String", # Optional. The name of this argument. Can be absent for function return 362 # argument. 363 }, 364 ], 365 "returnType": { # The type of a variable, e.g., a function argument. # Optional if language = "SQL"; required otherwise. 366 # If absent, the return type is inferred from definition_body at query time 367 # in each query that references this routine. If present, then the evaluated 368 # result will be cast to the specified returned type at query time. 369 # 370 # For example, for the functions created with the following statements 371 # CREATE FUNCTION Add(x FLOAT64, y FLOAT64) RETURNS FLOAT64 AS (x + y); 372 # CREATE FUNCTION Increment(x FLOAT64) AS (Add(x, 1)); 373 # CREATE FUNCTION Decrement(x FLOAT64) RETURNS FLOAT64 AS (Add(x, -1)); 374 # The return_type is {type_kind: "FLOAT64"} for Add and Decrement, and 375 # is absent for Increment (inferred as FLOAT64 at query time). 376 # Suppose the function Add is replaced by 377 # CREATE OR REPLACE FUNCTION Add(x INT64, y INT64) AS (x + y); 378 # Then the inferred return type of Increment is automatically changed to 379 # INT64 at query time, while the return type of Decrement remains FLOAT64. 380 # Examples: 381 # INT64: {type_kind="INT64"} 382 # ARRAY<STRING>: {type_kind="ARRAY", array_element_type="STRING"} 383 # STRUCT<x STRING, y ARRAY<DATE>>: 384 # {type_kind="STRUCT", 385 # struct_type={fields=[ 386 # {name="x", type={type_kind="STRING"}}, 387 # {name="y", type={type_kind="ARRAY", array_element_type="DATE"}} 388 # ]}} 389 "structType": { # The fields of this struct, in order, if type_kind = "STRUCT". 390 "fields": [ 391 # Object with schema name: StandardSqlField 392 ], 393 }, 394 "arrayElementType": # Object with schema name: StandardSqlDataType # The type of the array's elements, if type_kind = "ARRAY". 395 "typeKind": "A String", # Required. The top level type of this field. 396 # Can be any standard SQL data type (e.g., "INT64", "DATE", "ARRAY"). 397 }, 398 "lastModifiedTime": "A String", # Output only. The time when this routine was last modified, in milliseconds 399 # since the epoch. 400 "definitionBody": "A String", # Required. The body of the routine. 401 # For functions, this is the expression in the AS clause. 402 # If language=SQL, it is the substring inside (but excluding) the 403 # parentheses. For example, for the function created with the following 404 # statement 405 # create function JoinLines(x string, y string) as (concat(x, "\n", y)) 406 # definition_body = r'concat(x, "\n", y)' (\n is not replaced with 407 # linebreak). 408 # If language=JAVASCRIPT, it is the evaluated string in the AS clause. 409 # For example, for the function created with the following statement 410 # CREATE FUNCTION f() RETURNS STRING LANGUAGE js AS 'return "\n";\n' 411 # definition_body = 'return "\n";\n' (both \n are replaced with 412 # linebreaks). 413 }</pre> 414</div> 415 416<div class="method"> 417 <code class="details" id="list">list(projectId, datasetId, pageToken=None, maxResults=None)</code> 418 <pre>Lists all routines in the specified dataset. Requires the READER dataset 419role. 420 421Args: 422 projectId: string, Project ID of the routines to list (required) 423 datasetId: string, Dataset ID of the routines to list (required) 424 pageToken: string, Page token, returned by a previous call, to request the next page of 425results 426 maxResults: integer, The maximum number of results per page. 427 428Returns: 429 An object of the form: 430 431 { 432 "nextPageToken": "A String", # A token to request the next page of results. 433 "routines": [ # Routines in the requested dataset. Only the following fields are populated: 434 # etag, project_id, dataset_id, routine_id, routine_type, creation_time, 435 # last_modified_time, language. 436 { # A user-defined function or a stored procedure. 437 "routineType": "A String", # Required. 438 "language": "A String", # Optional. Defaults to "SQL". 439 "creationTime": "A String", # Output only. The time when this routine was created, in milliseconds since 440 # the epoch. 441 "importedLibraries": [ # Optional. If language = "JAVASCRIPT", this field stores the path of the 442 # imported JAVASCRIPT libraries. 443 "A String", 444 ], 445 "routineReference": { # Required. Reference describing the ID of this routine. 446 "projectId": "A String", # [Required] The ID of the project containing this routine. 447 "routineId": "A String", # [Required] The ID of the routine. The ID must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_). The maximum length is 256 characters. 448 "datasetId": "A String", # [Required] The ID of the dataset containing this routine. 449 }, 450 "etag": "A String", # Output only. A hash of this resource. 451 "arguments": [ # Optional. 452 { # Input/output argument of a function or a stored procedure. 453 "dataType": { # The type of a variable, e.g., a function argument. # Required unless argument_kind = ANY_TYPE. 454 # Examples: 455 # INT64: {type_kind="INT64"} 456 # ARRAY<STRING>: {type_kind="ARRAY", array_element_type="STRING"} 457 # STRUCT<x STRING, y ARRAY<DATE>>: 458 # {type_kind="STRUCT", 459 # struct_type={fields=[ 460 # {name="x", type={type_kind="STRING"}}, 461 # {name="y", type={type_kind="ARRAY", array_element_type="DATE"}} 462 # ]}} 463 "structType": { # The fields of this struct, in order, if type_kind = "STRUCT". 464 "fields": [ 465 # Object with schema name: StandardSqlField 466 ], 467 }, 468 "arrayElementType": # Object with schema name: StandardSqlDataType # The type of the array's elements, if type_kind = "ARRAY". 469 "typeKind": "A String", # Required. The top level type of this field. 470 # Can be any standard SQL data type (e.g., "INT64", "DATE", "ARRAY"). 471 }, 472 "argumentKind": "A String", # Optional. Defaults to FIXED_TYPE. 473 "mode": "A String", # Optional. Specifies whether the argument is input or output. 474 # Can be set for procedures only. 475 "name": "A String", # Optional. The name of this argument. Can be absent for function return 476 # argument. 477 }, 478 ], 479 "returnType": { # The type of a variable, e.g., a function argument. # Optional if language = "SQL"; required otherwise. 480 # If absent, the return type is inferred from definition_body at query time 481 # in each query that references this routine. If present, then the evaluated 482 # result will be cast to the specified returned type at query time. 483 # 484 # For example, for the functions created with the following statements 485 # CREATE FUNCTION Add(x FLOAT64, y FLOAT64) RETURNS FLOAT64 AS (x + y); 486 # CREATE FUNCTION Increment(x FLOAT64) AS (Add(x, 1)); 487 # CREATE FUNCTION Decrement(x FLOAT64) RETURNS FLOAT64 AS (Add(x, -1)); 488 # The return_type is {type_kind: "FLOAT64"} for Add and Decrement, and 489 # is absent for Increment (inferred as FLOAT64 at query time). 490 # Suppose the function Add is replaced by 491 # CREATE OR REPLACE FUNCTION Add(x INT64, y INT64) AS (x + y); 492 # Then the inferred return type of Increment is automatically changed to 493 # INT64 at query time, while the return type of Decrement remains FLOAT64. 494 # Examples: 495 # INT64: {type_kind="INT64"} 496 # ARRAY<STRING>: {type_kind="ARRAY", array_element_type="STRING"} 497 # STRUCT<x STRING, y ARRAY<DATE>>: 498 # {type_kind="STRUCT", 499 # struct_type={fields=[ 500 # {name="x", type={type_kind="STRING"}}, 501 # {name="y", type={type_kind="ARRAY", array_element_type="DATE"}} 502 # ]}} 503 "structType": { # The fields of this struct, in order, if type_kind = "STRUCT". 504 "fields": [ 505 # Object with schema name: StandardSqlField 506 ], 507 }, 508 "arrayElementType": # Object with schema name: StandardSqlDataType # The type of the array's elements, if type_kind = "ARRAY". 509 "typeKind": "A String", # Required. The top level type of this field. 510 # Can be any standard SQL data type (e.g., "INT64", "DATE", "ARRAY"). 511 }, 512 "lastModifiedTime": "A String", # Output only. The time when this routine was last modified, in milliseconds 513 # since the epoch. 514 "definitionBody": "A String", # Required. The body of the routine. 515 # For functions, this is the expression in the AS clause. 516 # If language=SQL, it is the substring inside (but excluding) the 517 # parentheses. For example, for the function created with the following 518 # statement 519 # create function JoinLines(x string, y string) as (concat(x, "\n", y)) 520 # definition_body = r'concat(x, "\n", y)' (\n is not replaced with 521 # linebreak). 522 # If language=JAVASCRIPT, it is the evaluated string in the AS clause. 523 # For example, for the function created with the following statement 524 # CREATE FUNCTION f() RETURNS STRING LANGUAGE js AS 'return "\n";\n' 525 # definition_body = 'return "\n";\n' (both \n are replaced with 526 # linebreaks). 527 }, 528 ], 529 }</pre> 530</div> 531 532<div class="method"> 533 <code class="details" id="list_next">list_next(previous_request, previous_response)</code> 534 <pre>Retrieves the next page of results. 535 536Args: 537 previous_request: The request for the previous page. (required) 538 previous_response: The response from the request for the previous page. (required) 539 540Returns: 541 A request object that you can call 'execute()' on to request the next 542 page. Returns None if there are no more items in the collection. 543 </pre> 544</div> 545 546<div class="method"> 547 <code class="details" id="update">update(projectId, datasetId, routineId, body)</code> 548 <pre>Updates information in an existing routine. The update method replaces the 549entire Routine resource. 550 551Args: 552 projectId: string, Project ID of the routine to update (required) 553 datasetId: string, Dataset ID of the routine to update (required) 554 routineId: string, Routine ID of the routine to update (required) 555 body: object, The request body. (required) 556 The object takes the form of: 557 558{ # A user-defined function or a stored procedure. 559 "routineType": "A String", # Required. 560 "language": "A String", # Optional. Defaults to "SQL". 561 "creationTime": "A String", # Output only. The time when this routine was created, in milliseconds since 562 # the epoch. 563 "importedLibraries": [ # Optional. If language = "JAVASCRIPT", this field stores the path of the 564 # imported JAVASCRIPT libraries. 565 "A String", 566 ], 567 "routineReference": { # Required. Reference describing the ID of this routine. 568 "projectId": "A String", # [Required] The ID of the project containing this routine. 569 "routineId": "A String", # [Required] The ID of the routine. The ID must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_). The maximum length is 256 characters. 570 "datasetId": "A String", # [Required] The ID of the dataset containing this routine. 571 }, 572 "etag": "A String", # Output only. A hash of this resource. 573 "arguments": [ # Optional. 574 { # Input/output argument of a function or a stored procedure. 575 "dataType": { # The type of a variable, e.g., a function argument. # Required unless argument_kind = ANY_TYPE. 576 # Examples: 577 # INT64: {type_kind="INT64"} 578 # ARRAY<STRING>: {type_kind="ARRAY", array_element_type="STRING"} 579 # STRUCT<x STRING, y ARRAY<DATE>>: 580 # {type_kind="STRUCT", 581 # struct_type={fields=[ 582 # {name="x", type={type_kind="STRING"}}, 583 # {name="y", type={type_kind="ARRAY", array_element_type="DATE"}} 584 # ]}} 585 "structType": { # The fields of this struct, in order, if type_kind = "STRUCT". 586 "fields": [ 587 # Object with schema name: StandardSqlField 588 ], 589 }, 590 "arrayElementType": # Object with schema name: StandardSqlDataType # The type of the array's elements, if type_kind = "ARRAY". 591 "typeKind": "A String", # Required. The top level type of this field. 592 # Can be any standard SQL data type (e.g., "INT64", "DATE", "ARRAY"). 593 }, 594 "argumentKind": "A String", # Optional. Defaults to FIXED_TYPE. 595 "mode": "A String", # Optional. Specifies whether the argument is input or output. 596 # Can be set for procedures only. 597 "name": "A String", # Optional. The name of this argument. Can be absent for function return 598 # argument. 599 }, 600 ], 601 "returnType": { # The type of a variable, e.g., a function argument. # Optional if language = "SQL"; required otherwise. 602 # If absent, the return type is inferred from definition_body at query time 603 # in each query that references this routine. If present, then the evaluated 604 # result will be cast to the specified returned type at query time. 605 # 606 # For example, for the functions created with the following statements 607 # CREATE FUNCTION Add(x FLOAT64, y FLOAT64) RETURNS FLOAT64 AS (x + y); 608 # CREATE FUNCTION Increment(x FLOAT64) AS (Add(x, 1)); 609 # CREATE FUNCTION Decrement(x FLOAT64) RETURNS FLOAT64 AS (Add(x, -1)); 610 # The return_type is {type_kind: "FLOAT64"} for Add and Decrement, and 611 # is absent for Increment (inferred as FLOAT64 at query time). 612 # Suppose the function Add is replaced by 613 # CREATE OR REPLACE FUNCTION Add(x INT64, y INT64) AS (x + y); 614 # Then the inferred return type of Increment is automatically changed to 615 # INT64 at query time, while the return type of Decrement remains FLOAT64. 616 # Examples: 617 # INT64: {type_kind="INT64"} 618 # ARRAY<STRING>: {type_kind="ARRAY", array_element_type="STRING"} 619 # STRUCT<x STRING, y ARRAY<DATE>>: 620 # {type_kind="STRUCT", 621 # struct_type={fields=[ 622 # {name="x", type={type_kind="STRING"}}, 623 # {name="y", type={type_kind="ARRAY", array_element_type="DATE"}} 624 # ]}} 625 "structType": { # The fields of this struct, in order, if type_kind = "STRUCT". 626 "fields": [ 627 # Object with schema name: StandardSqlField 628 ], 629 }, 630 "arrayElementType": # Object with schema name: StandardSqlDataType # The type of the array's elements, if type_kind = "ARRAY". 631 "typeKind": "A String", # Required. The top level type of this field. 632 # Can be any standard SQL data type (e.g., "INT64", "DATE", "ARRAY"). 633 }, 634 "lastModifiedTime": "A String", # Output only. The time when this routine was last modified, in milliseconds 635 # since the epoch. 636 "definitionBody": "A String", # Required. The body of the routine. 637 # For functions, this is the expression in the AS clause. 638 # If language=SQL, it is the substring inside (but excluding) the 639 # parentheses. For example, for the function created with the following 640 # statement 641 # create function JoinLines(x string, y string) as (concat(x, "\n", y)) 642 # definition_body = r'concat(x, "\n", y)' (\n is not replaced with 643 # linebreak). 644 # If language=JAVASCRIPT, it is the evaluated string in the AS clause. 645 # For example, for the function created with the following statement 646 # CREATE FUNCTION f() RETURNS STRING LANGUAGE js AS 'return "\n";\n' 647 # definition_body = 'return "\n";\n' (both \n are replaced with 648 # linebreaks). 649 } 650 651 652Returns: 653 An object of the form: 654 655 { # A user-defined function or a stored procedure. 656 "routineType": "A String", # Required. 657 "language": "A String", # Optional. Defaults to "SQL". 658 "creationTime": "A String", # Output only. The time when this routine was created, in milliseconds since 659 # the epoch. 660 "importedLibraries": [ # Optional. If language = "JAVASCRIPT", this field stores the path of the 661 # imported JAVASCRIPT libraries. 662 "A String", 663 ], 664 "routineReference": { # Required. Reference describing the ID of this routine. 665 "projectId": "A String", # [Required] The ID of the project containing this routine. 666 "routineId": "A String", # [Required] The ID of the routine. The ID must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_). The maximum length is 256 characters. 667 "datasetId": "A String", # [Required] The ID of the dataset containing this routine. 668 }, 669 "etag": "A String", # Output only. A hash of this resource. 670 "arguments": [ # Optional. 671 { # Input/output argument of a function or a stored procedure. 672 "dataType": { # The type of a variable, e.g., a function argument. # Required unless argument_kind = ANY_TYPE. 673 # Examples: 674 # INT64: {type_kind="INT64"} 675 # ARRAY<STRING>: {type_kind="ARRAY", array_element_type="STRING"} 676 # STRUCT<x STRING, y ARRAY<DATE>>: 677 # {type_kind="STRUCT", 678 # struct_type={fields=[ 679 # {name="x", type={type_kind="STRING"}}, 680 # {name="y", type={type_kind="ARRAY", array_element_type="DATE"}} 681 # ]}} 682 "structType": { # The fields of this struct, in order, if type_kind = "STRUCT". 683 "fields": [ 684 # Object with schema name: StandardSqlField 685 ], 686 }, 687 "arrayElementType": # Object with schema name: StandardSqlDataType # The type of the array's elements, if type_kind = "ARRAY". 688 "typeKind": "A String", # Required. The top level type of this field. 689 # Can be any standard SQL data type (e.g., "INT64", "DATE", "ARRAY"). 690 }, 691 "argumentKind": "A String", # Optional. Defaults to FIXED_TYPE. 692 "mode": "A String", # Optional. Specifies whether the argument is input or output. 693 # Can be set for procedures only. 694 "name": "A String", # Optional. The name of this argument. Can be absent for function return 695 # argument. 696 }, 697 ], 698 "returnType": { # The type of a variable, e.g., a function argument. # Optional if language = "SQL"; required otherwise. 699 # If absent, the return type is inferred from definition_body at query time 700 # in each query that references this routine. If present, then the evaluated 701 # result will be cast to the specified returned type at query time. 702 # 703 # For example, for the functions created with the following statements 704 # CREATE FUNCTION Add(x FLOAT64, y FLOAT64) RETURNS FLOAT64 AS (x + y); 705 # CREATE FUNCTION Increment(x FLOAT64) AS (Add(x, 1)); 706 # CREATE FUNCTION Decrement(x FLOAT64) RETURNS FLOAT64 AS (Add(x, -1)); 707 # The return_type is {type_kind: "FLOAT64"} for Add and Decrement, and 708 # is absent for Increment (inferred as FLOAT64 at query time). 709 # Suppose the function Add is replaced by 710 # CREATE OR REPLACE FUNCTION Add(x INT64, y INT64) AS (x + y); 711 # Then the inferred return type of Increment is automatically changed to 712 # INT64 at query time, while the return type of Decrement remains FLOAT64. 713 # Examples: 714 # INT64: {type_kind="INT64"} 715 # ARRAY<STRING>: {type_kind="ARRAY", array_element_type="STRING"} 716 # STRUCT<x STRING, y ARRAY<DATE>>: 717 # {type_kind="STRUCT", 718 # struct_type={fields=[ 719 # {name="x", type={type_kind="STRING"}}, 720 # {name="y", type={type_kind="ARRAY", array_element_type="DATE"}} 721 # ]}} 722 "structType": { # The fields of this struct, in order, if type_kind = "STRUCT". 723 "fields": [ 724 # Object with schema name: StandardSqlField 725 ], 726 }, 727 "arrayElementType": # Object with schema name: StandardSqlDataType # The type of the array's elements, if type_kind = "ARRAY". 728 "typeKind": "A String", # Required. The top level type of this field. 729 # Can be any standard SQL data type (e.g., "INT64", "DATE", "ARRAY"). 730 }, 731 "lastModifiedTime": "A String", # Output only. The time when this routine was last modified, in milliseconds 732 # since the epoch. 733 "definitionBody": "A String", # Required. The body of the routine. 734 # For functions, this is the expression in the AS clause. 735 # If language=SQL, it is the substring inside (but excluding) the 736 # parentheses. For example, for the function created with the following 737 # statement 738 # create function JoinLines(x string, y string) as (concat(x, "\n", y)) 739 # definition_body = r'concat(x, "\n", y)' (\n is not replaced with 740 # linebreak). 741 # If language=JAVASCRIPT, it is the evaluated string in the AS clause. 742 # For example, for the function created with the following statement 743 # CREATE FUNCTION f() RETURNS STRING LANGUAGE js AS 'return "\n";\n' 744 # definition_body = 'return "\n";\n' (both \n are replaced with 745 # linebreaks). 746 }</pre> 747</div> 748 749</body></html>