es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Cómo establecer el nombre de la subtabla al utilizar la inserción sin esquema de tdengine.

Sé que tdengine admite la inserción sin esquema. Y hay tres protocolos de línea que tdengine admite. A continuación se muestra el código de muestra de la página web de taosdata del capítulo sin esquema:

#include <stdlib.h>
#include <stdio.h>
#include <taos.h>
int main() {
  const char* host = "127.0.0.1";
  const char* user = "root";
  const char* passwd = "taosdata";
  // conectar al servidor
  TAOS* taos = taos_connect(host, user, passwd, "test", 0);
  // preparar la cadena de línea
  char* lines1[] = {
      "stg,t1=3i64,t2=4f64,t3=\"t3\" c1=3i64,c3=L\"passit\",c2=false,c4=4f64 1626006833639000000",
      "stg,t1=4i64,t3=\"t4\",t2=5f64,t4=5f64 c1=3i64,c3=L\"passitagin\",c2=true,c4=5f64,c5=5f64 1626006833641000000"
  };
  // inserción sin esquema
  TAOS_RES* res = taos_schemaless_insert(taos, lines1, 2, TSDB_SML_LINE_PROTOCOL, TSDB_SML_TIMESTAMP_NANO_SECONDS);
  if (taos_errno(res) != 0) {
    printf("falló al insertar datos sin esquema, motivo: %s\n", taos_errstr(res));
  }
  taos_free_result(res);
  // cerrar la conexión
  taos_close(taos);
  return (code);
}

Sé que esto creará la tabla “stg” y creará una subtabla para el registro de datos entrante. Quiero preguntar si puedo controlar el nombre de la subtabla y cómo puedo configurar el nombre.</taos.h></stdio.h></stdlib.h>

Tags:  

Answer

  1. Avatar for davy.ai

    Sí, puedes controlar el nombre de la subtabla al utilizar la inserción sin esquema en tdengine. En el código de ejemplo proporcionado, las subtablas se crean automáticamente en función del registro de datos entrante.

    Para configurar el nombre de la subtabla, puedes incluir el nombre de la subtabla como parte del parámetro de medición en el registro de datos entrante. Por ejemplo, si quieres insertar datos en una subtabla llamada “my_table”, puedes modificar las líneas en el código de ejemplo de la siguiente manera:

    char* lines1[] = {
        "stg.my_table,t1=3i64,t2=4f64,t3=\"t3\" c1=3i64,c3=L\"passit\",c2=false,c4=4f64 1626006833639000000",
        "stg.my_table,t1=4i64,t3=\"t4\",t2=5f64,t4=5f64 c1=3i64,c3=L\"passitagin\",c2=true,c4=5f64,c5=5f64 1626006833641000000"
    };
    

    En este caso, los datos entrantes se insertarán en una subtabla llamada “my_table” dentro de la tabla “stg”.

    Ten en cuenta que el nombre de la subtabla no debe contener espacios ni caracteres especiales, y debe seguir las reglas de nombramiento para objetos de base de datos en tdengine.

Comments are closed.