本手册下载

X DevAPI用户指南/使用集合/集合的基本CRUD操作

4.1集合的基本CRUD操作

使用X DevAPI处理文档集合非常简单。下面的示例展示了CRUD操作的基本用法(参见第4.3节,“集合CRUD功能概述”在建立到MySQL Server实例的连接之后,将创建一个可以保存JSON文档的新集合,并插入几个文档。然后,执行find操作从集合中搜索特定的文档。最后,再次从数据库中删除集合。该示例假定测试模式存在且集合my_collection不存在。

MySQL Shell JavaScript代码

//连接到MySQL服务器和工作与收集var mysqlx = require('mysqlx');//连接到服务器var mySession = mysqlx。getSession({host: 'localhost', port: 33060, user: 'user', password: ')密码'});var myDb = myssession . getschema('测试');//创建一个新的集合'my_collection' var myColl = myDb.createCollection('my_collection');//插入文档myColl。add({name: 'Laurie', age: 19}).execute();myColl。add({name: 'Nadya', age: 54}).execute();myColl。add({name: 'Lukas', age: 32}).execute();//找到一个文档var docs = myColl。find('name like :param1 AND age < :param2').limit(1). bind('param1','L%').bind('param2',20).execute(); // Print document print(docs.fetchOne()); // Drop the collection myDb.dropCollection('my_collection');

MySQL Shell Python代码

# Connect to Server myssession = mysqlx. exe = mysqlx. exe = mysqlx. exe = mysqlx. exe = mysqlx. exeGet_session ({'host': 'localhost', 'port': 33060, 'user': 'user', 'password': '密码'}) myDb = myssession .get_schema('test') #创建一个新的集合'my_collection' myColl = myDb.create_collection('my_collection') #插入文档myColl. get_schema('test') #添加({“名称”:“劳里”,“年龄”:19}). execute () myColl。添加({“名称”:“以”,“年龄”:54}). execute () myColl。add({'name': 'Lukas', 'age': 32}).execute() #查找文档docs = myColl。find('name like:param1 AND age <:param2') \ .limit(1) \ .bind('param1','L%') \ .bind('param2',20) \ .execute() #打印文档doc = docs.fetch_one() Print (doc) #删除集合myDb.drop_collection('my_collection')

node . js JavaScript代码

// -------------------------------------------------- // 连接到MySQL服务器和使用var mysqlx =需要集合(“@mysql / xdevapi”);var数据库;//连接到服务器mysqlx .getSession({user: 'user', password: 'password', host: 'localhost', port: '33060',}) .then(function (session) {db = session. getschema ('test');//创建一个新的集合'my_collection'返回db.createCollection('my_collection');}) .then(function (myColl){//插入文档返回Promise .all([myColl. all])add({name: 'Laurie', age: 19}).execute(), myColl. execute();add({name: 'Nadya', age: 54}).execute();add({name: 'Lukas', age: 32}).execute(function(){//找到一个文档返回myColl .find('name like:name && age <:age') .bind({name: 'L%', age: 20}) .limit(1) .execute(function (doc){//打印文档console.log(doc);});});}) .then(function(docs){//删除集合返回db.dropCollection('my_collection');}) .catch(函数(err){//处理错误});

c#代码

//连接到服务器var myssession = MySQLX.GetSession(" Server =localhost;port=33060;user=user密码;“);var myDb = myssession . getschema(“测试”);//创建一个新的集合"my_collection" var myColl = myDb.CreateCollection("my_collection");//插入文档myColl。添加(new {name = "Laurie", age = 19}).Execute();myColl。Add(new {name = "Nadya", age = 54}).Execute();myColl。添加(new {name = "Lukas", age = 32}).Execute();//找到一个文档var docs = myColl。Find("name like :param1 AND age < :param2").Limit(1) .Bind("param1", "L%").Bind("param2", 20).Execute(); // Print document Console.WriteLine(docs.FetchOne()); // Drop the collection myDb.DropCollection("my_collection");

Python代码

# Connect to Server my_session = mysqlx. exe = mysqlx. exe = mysqlx. exe = mysqlx. exeget_session({'host': 'localhost', 'port': 33060, 'user': 'user', 'password': 'password'}) my_schema = my_session.get_schema('test') #创建一个新的集合'my_collection' my_coll = my_schema.create_collection('my_collection') #插入文档my_coll。添加({“名称”:“劳里”,“年龄”:19}). execute () my_coll。添加({“名称”:“以”,“年龄”:54}). execute () my_coll。add({'name': 'Lukas', 'age': 32}).execute() #查找文档docs = my_coll。find('name like:param1 AND age <:param2') \ .limit(1) \ .bind('param1', 'L%') \ .bind('param2', 20) \ .execute() #打印文档doc = docs.fetch_one() Print (" name: {0}".format(doc['name'])) Print (" age: {0}".format(doc['age])) #删除集合my_session。drop_collection('测试',' my_collection ')

Java代码

//连接到服务器Session myssession = new SessionFactory().getSession("mysqlx://localhost:33060/test?user=user&password=password");Schema myDb = myssession . getschema ("test");//创建一个新的集合my_collection collection myColl = myDb.createCollection("my_collection");//插入文档myColl。添加(“{\“\”:\“劳里\”,\“年龄\”:19}"). execute ();myColl。添加(“{\“\”:\“以“\”,\“年龄\”:54}"). execute ();myColl。添加(“{\“\”:\“卢卡斯\”,\“年龄\”:32}"). execute ();//找到文档DocResult docs = myColl。find("name like :name AND age < :age") .bind("name", "L%").bind("age", 20).execute(); // Print document DbDoc doc = docs.fetchOne(); System.out.println(doc); // Drop the collection myDb.dropCollection("my_collection");

c++代码

//连接到MySQL服务器和使用集合#include  //连接到服务器会话会话(33060,“用户”,“密码”);db = session.getSchema("test");//创建一个新的集合my_collection collection myColl = db.createCollection("my_collection");//插入文档myColl。添加(R”({“名称”:“劳里”,“年龄”:19})”). execute ();myColl。添加(R”({“名称”:“以”,“年龄”:54})”). execute ();myColl。添加(R”({“名称”:“卢卡斯”,“年龄”:32})”). execute ();//找到文档DocResult docs = myColl。find("name like :param1 AND age < :param2").limit(1) .bind("param1","L%").bind("param2",20).execute(); // Print document cout << docs.fetchOne(); // Drop the collection db.dropCollection("my_collection");