54 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
			
		
		
	
	
			54 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
| const taos = require("@tdengine/client");
 | |
| 
 | |
| const conn = taos.connect({
 | |
|   host: "localhost",
 | |
| });
 | |
| 
 | |
| const cursor = conn.cursor();
 | |
| 
 | |
| function prepareSTable() {
 | |
|   cursor.execute("CREATE DATABASE power");
 | |
|   cursor.execute("USE power");
 | |
|   cursor.execute(
 | |
|     "CREATE STABLE meters (ts TIMESTAMP, current FLOAT, voltage INT, phase FLOAT) TAGS (location BINARY(64), groupId INT)"
 | |
|   );
 | |
| }
 | |
| 
 | |
| //ANCHOR: insertData
 | |
| function insertData() {
 | |
|   // init
 | |
|   cursor.stmtInit();
 | |
|   // prepare
 | |
|   cursor.stmtPrepare(
 | |
|     "INSERT INTO ? USING meters TAGS(?, ?) VALUES(?, ?, ?, ?)"
 | |
|   );
 | |
| 
 | |
|   // bind table name and tags
 | |
|   let tagBind = new taos.TaosMultiBindArr(2);
 | |
|   tagBind.multiBindBinary(["California.SanFrancisco"]);
 | |
|   tagBind.multiBindInt([2]);
 | |
|   cursor.stmtSetTbnameTags("d1001", tagBind.getMultiBindArr());
 | |
| 
 | |
|   // bind values
 | |
|   let valueBind = new taos.TaosMultiBindArr(4);
 | |
|   valueBind.multiBindTimestamp([1648432611249, 1648432611749]);
 | |
|   valueBind.multiBindFloat([10.3, 12.6]);
 | |
|   valueBind.multiBindInt([219, 218]);
 | |
|   valueBind.multiBindFloat([0.31, 0.33]);
 | |
|   cursor.stmtBindParamBatch(valueBind.getMultiBindArr());
 | |
|   cursor.stmtAddBatch();
 | |
| 
 | |
|   // execute
 | |
|   cursor.stmtExecute();
 | |
|   cursor.stmtClose();
 | |
| }
 | |
| //ANCHOR_END: insertData
 | |
| 
 | |
| try {
 | |
|   prepareSTable();
 | |
|   insertData();
 | |
| } finally {
 | |
|   cursor.close();
 | |
|   conn.close();
 | |
| }
 |