aardio 文档

aardio 范例: sqlServer 库 - MSSQL 增、删、改、查

//sqlServer 库 - MSSQL 增、删、改、查

import console; import sqlServer;

//打开数据库 var db = sqlServer({ ["Data Source"] = "127.0.0.1,7788"; //"IP地址,服务端口" ["Database"]= "database"; //数据库名 ["User ID"] = "sa"; //用户名 ["Password"]= "123456"; //用户密码 })

//创建表 if(!db.existsTable("TestDb109") ){ //要特别注意 varchar 是 ANSI 编码字符串,NVARCHAR 是 UTF-16 编码字符串( aardio 中的 ustring ) db.exec("create table TestDb109 (url varchar(130), comment NVARCHAR(280), photo binary(200) NULL)") }

//使用命令参数 - 参数化可避免SQL注入 var cmd = db.createCommand( "INSERT INTO TestDb109(url,comment,photo) VALUES(@url,@comment,@photo)" );

//绑定命令参数,二进制字段只能用这种方法插入 cmd.bind( url = "http://bbs.aardio.com"; //UTF-8字符串会被 MSSQL 转换为 ANSI 字符串,这里也可以直接传 buffer。 comment = '✔ ❤ ☆ Unicode 字符百科测试一下hi!'u; //NVARCHAR 必须使用 UTF-16 字符串(ustring),其他编码可以用 string.toUtf16() 函数转换为UTF-16 编码。 photo = raw.buffer("Buffer") //二进制数据,也可用 string.loadBuffer() 加载文件 )

//执行命令 cmd.execute();

//增 - 调用 access.formatParameter() 格式化命名参数生成SQL语句 db.exec( "INSERT INTO TestDb109(url,comment) VALUES(@url,@comment)",{ url = "http://bbs.aardio.com"; comment = "字符串包含'单引号' 测试一下"; } )

//改 db.exec("UPDATE TestDb109 SET url='%s' WHERE comment='%s' ","http://www.aardio.com","这是说明")

//查 for(rs in db.each("SELECT * FROM TestDb109") ){ console.log( rs("url").value,rs("comment").value,rs("photo").value )
}

//将查询结果转换为普通数组 var tab = db.getTable("SELECT * FROM TestDb109"); console.dump(tab);

//删 - 自动调用 string.format() 函数格式化SQL语句,简单拼接字符串应避免包含单引号 db.exec("DELETE FROM TestDb109 WHERE url='%s'","http://www.aardio.com");

db.exec("DROP TABLE TestDb109")

//关闭数据库连接 db.close();

console.pause();

Markdown 格式