怎么后台查询SQLiteDatabase中的值

怎么后台查询SQLiteDatabase中的值,第1张

SqLiteDatabase查询并获取里面的数值的实现,案例(查询下图表格里面不同的name对应的value值)代码如下:

public int cgQueryItemValue(String name)

  {

    Log.e(TAG, "hongyan:cgQueryItemValue name=" +name)

    try {

      Cursor c =mSqLiteDatabase.query(Const.ENG_STRING2INT_TABLE,

          new String[] {

             Const.ENG_STRING2INT_NAME,Const.ENG_STRING2INT_VALUE

          },

          Const.ENG_STRING2INT_NAME + "= \'" + name + "\'", null, null, null, null)

//上述的Cursor c 获取到的是指定name对应的一行(只包括指定列)也就是下图这样的: if (c !=null) {

        c.moveToFirst()//必须写,否则读不到数据,将Index移动到第一位上

        int valueIndex=c.getColumnIndexOrThrow(Const.ENG_STRING2INT_VALUE)

        //如上图,valueIndex= 1

        int value =c.getInt(valueIndex)

        //注意value值是什么类型用合适的get,如果是String就得用getString!!否则会有异常

        c.close()

        return value

      }

    } catch (Exception e) {

      return 0

    }

    return 0

  }

protected int cgQueryAutoTestFailCount()

  {

    int failCount = 0

    int result =0

    for(String itemName:Const.CG_DEFAULT_AUTO_TEST_ITEMS_NAME)

    {

      result =mEngSqlite.cgQueryItemValue(itemName)

      //Log.d(TAG, "hongyan: cgQueryAutoTestFailCount item test result = " + result)

      if(result== 0)

      {

        failCount++

      }

    }

    Log.d(TAG, "hongyan: cgQueryAutoTestFailCount failCount = " + failCount)

    return failCount

  }

想知道你的mysql装在哪里吗?CentOS7一般是装在/var/lib/mysql中的

在完成迁移之前,先用下面的指令来停止mysqld服务

service mysqld stop,或者直接点sudo systemctl stop mysqld

然后用df-h指令看服务器上剩余空间是多少,假设我们新挂了一块500G的硬盘到/data上

那么请把mysql整个文件夹拷贝到/data中,像下面这样:

sudo cp -rf /var/lib/mysql /data/mysql,拷完以后原来的mysql文件夹就可以删除了

然后再修改/etc/my.cnf,这个也是需要su的:

sudo vi /etc/my.cnf

里面有一个字段叫[mysqld],将datadir和socket修改成这样:

datadir=/data/mysql

socket=/data/mysql/mysql.sock

接下来,有的人说要修改/etc/init.d/mysqld,但我的服务器不需要,直接通过

service mysqld start就可以启动SQL服务了,远程也可以连接上,但是:

当你使用终端mysql -u root -p的时候,就会报下面这个错:

Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock'

这个时候,你有两种解决办法,一种是造一个软连接

ln -s /data/mysql/mysql.sock /var/lib/mysql/mysql.sock,原因是你已经删掉之前的mysql目录了

另外一种办法,是在/etc/my.cnf下面新建一个新字段:

[mysql]

socket=/data/mysql/mysql.sock

第一种方法不需要重启mysql server,第二种方法需要重启mysql server,

然后,你就可以成功地从终端里进入mysql了

敲黑板,不要在[mysql]下面自做主张地写上datadir=/data/mysql,这样会导致本地命令行登录时报错:Unknown Variable: datadir=/data/mysql

use NEWJXGLXT

go

create table Employees(

编号 char(40) not null,

姓名 char(8) not null,

性别 char(2) not null,

部门 varchar(16),

电话 varchar(20),

地址 varchar(50)

)

go


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/10059858.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-04
下一篇2023-05-04

发表评论

登录后才能评论

评论列表(0条)

    保存