wxsqlite3 相比普通的 sqlite3 的好处就是可以对数据库进行加密,但这个 wxsqlite3 的编译过程真的是非常曲折,我自己也是折腾了几个小时才真正编译出来一个可用的 wxsqlite3 的静态库文件。那么接下来废话不多说开始准备环境。
Meteor mongodb 查询某个数据是否在 Collection 的某个 Array 字段中
我们通常会用一个 Array 字段来储存一组用户 ID 列表或者一组文章 ID 列表。当我们需要查询某个用户是否在这个 Collection 的某个 Array 字段时就会用到本文中提到的方法。
sqlite 替换某字段关键字的 SQL 语句
例如某个字段中有类似如下这样的内容
E:\Code
E:\Documents
E:\Movies
E:\Downloads
当我们需要批量把其中的路径从 E:\
更换为 F:\
的时候,就可以用到下面的方法:
UPDATE tableName
SET fieldName ='F:\' || substr(fieldName, 4)
WHERE fieldName LIKE "E:\%"
Meteor 开发环境 mongodb 的连接
本文主要总结一下在使用 Meteor 开发过程中对 mongodb 数据库的管理。其中包含使用命令行终端(meteor shell)进行管理,还有图形化界面的工具 Robomongo 工具。
mysql 预编译 sql 实现代码
mysql 的预编译功能,是为了那些频繁执行的语法不变的 sql 语句而准备的,每次 sql 语句执行都要经过数据库的编译,这个过程比较耗时,一条两条或十几条可能没什么感觉,如果是上千条效率会明显的有变化。mysql 提供的机制是可以让一个结构不变的 sql 语句预先在数据库中编译,我们只需要将可变的参数每次传递给它执行就可以了,这样就省去了编译的步骤,效率提高非常明显。下面就是预编译的一个小例子。
实现一个简单的 mysql 工具
无论在 windows 下还是 linux 下,我们每次去连接 mysql 的时候都会运行一个叫做 mysql 的命令,本文就模仿制作一个类似的程序,实现可以在里面执行 DML 和 DQL 语句。具体代码的实现请参考程序。
c语言 linux 下连接 mysql 增删改查
使用 c语言连接处理 oracle 数据库的时候,是使用的 oracle 提供的 proc 方案,而 mysql 则提供了一系列函数,我们需要包含 mysql 的头文件 mysql.h 和连接 mysql 的一些库才能正确的使用他的 api。下面的示例包含了连接、查询、使用游标获取数据、获取结果集列头、错误处理等方法,请参考代码和注释。
mysql 较 oracle 查询语句的不同
mysql 与 oracle 的查询语法有一部分不太相同,特别是在多表查询时,mysql 无法适应 oracle 的做外连接和右外连接的查询语法,自己有另外一套查询语法,与 ms sql server 相似。所以这里列举一下,方便以后查询和使用。
proc 编程处理 select 获取的数据集
使用 select 语句获取数据,有两种种结果,第一种,得到的结果只有一行,我们只需要用指定的变量来接收它就可以了,但第二种情况则是有多行数据,每一行数据,处理这种多行返回的数据也有两种方法,一个是使用一个二维宿主数组来接收这些结果(如果不知道结果有多少,宿主数组也不知道该定义多大,所以这种方法不太灵活),另外一个是使用游标的方式来遍历数据,游标又分单向的遍历游标和滚动游标。本文就介绍这些所有的方法。
proc 编程错误处理机制及null处理
在连接数据库的过程中我们有的时候可能会遇到连接数据库出错、插入数据出错、sql语句写错等等情况,除了这些,我们还会在插入和读取数据时会遇到处理 null 值的问题,以下代码演示了如何对 sql 执行出错进行处理,并执行了一个 null 值插入的操作,中间引入了指示变量的概念,就是专门为了处理 null 值而存在的,注意在插入数据时,指示变量是紧随宿主变量的(:loc:loc_ind)。后面我们将介绍 select 查询出来的 null 值该如何处理。
proc 编程执行 insert、delete、update语句
主题中提到的三种语句都是没有返回值的,所以我们实现起来也最简单,下面代码中包含了 insert、update 和 delete 三种语法的使用。值得注意的是在 insert 和 update 的时候使用宿主变量时的语法,在宿主变量前一定要加冒号,这是初学者最容易犯的错误。
oracle proc 编程基础及最小化案例
oracle proc 编程是在我的概念中是非常陌生的,学习了一天下来发现这东西真的好古老,但是依然健壮、稳定,其中间是编辑一个 .pc 的文件使用 proc 进行预处理,预处理后生成一个真正的.c文件,此时再由 gcc 去编译成一个可执行文件运行。因为 proc 涉及到的知识较多,我无法整理到几篇博文中就概述这些所涉及的知识,所以只能总结代码做好注释防止以后自己需要时忘记。如果有想进一步了解 proc 编程的,可以买名为“Oracle9I ProC C++编程指南”。包括 oracle 的环境搭建也并不是我们讨论的重点,如果有精力的话,我会给大家编写类似的教程。
oracle 索引
索引的概念不仅仅在 oracle 中存在,很多大型数据库软件都有索引的功能,其主要目的是为某张表的某个经常作为过滤条件的字段创建一个快速的索引区,当用户在查询过程中使用了这个过滤条件(比如 where id = 10)那么数据库会自动去索引区查找这个字段的索引,然后通过索引的指向快速找到需要查找的数据,可以抽象的理解它像我们C语言学习的指针一样。
oracle 视图
视图是一个抽象的概念,简单的说就是把表中的部分我们关注的内容保存一份出来到视图中,这样我们每次就不需要通过那么多字段的表去查询数据,只需要通过已经过滤出来的我们关系的数据中(视图中)取我们需要的数据。进一步说就是从一张大的表数据中抽离出来一部分我们关注的数据,这部分数据就是可以存放在视图中。向视图提供数据内容的语句为 SELECT 语句, 可以将视图理解为存储起来的 SELECT 语句。
oracle 表操作
本文记录 oracle 环境下对表的创建、字段处理(增、删、改、重命名)、删除、重命名操作,其中包含了在创建表时常用的约束条件及数据类型。