返回顶部
首页 > 资讯 > 数据库 >SQLite的insert方法参数是怎样的
  • 549
分享到

SQLite的insert方法参数是怎样的

2024-04-02 19:04:59 549人浏览 薄情痞子
摘要

这篇文章给大家介绍sqlite的insert方法参数是怎样的,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。看到一个api的参数不懂的时候,我们会做什么呢!Baidu,Google。很少

这篇文章给大家介绍sqlite的insert方法参数是怎样的,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

看到一个api的参数不懂的时候,我们会做什么呢!Baidu,Google。很少回去看源码的吧,我也是,太懒了,批评一下。啪啪~

先看一段创建数据库的代码吧。

db.execSQL("CREATE TABLE users (" + "_id INTEGER PRIMARY KEY, " + "username TEXT, " + "realname TEXT, "
				+ "nsid TEXT, " + "buddy_icon BLOB," + "last_update INTEGER);");

我们能看到其中有一个类型是我们不常用的,BLOB,学过数据库的人肯定都知道了,但是我还是要说一下,这个表示的是二进制数据类型,比如我们可以将一个图片的数据存入其中,当然小图可以,大图就算了嘛。for example:

addUser(db, "Bob Lee", "Bob Lee", "45701389@N00", R.drawable.boblee_buddyicon);
private void addUser(SQLiteDatabase db, String userName, String realName, String nsid, int icon) {

		final ContentValues values = new ContentValues();
		values.put(COLUMN_USERNAME, userName);
		values.put(COLUMN_REALNAME, realName);
		values.put(COLUMN_NSID, nsid);
		values.put(COLUMN_LAST_UPDATE, System.currentTimeMillis());

		final Bitmap bitmap = BitmapFactory.decodeResource(mContext.getResources(), icon);
		writeBitmap(values, COLUMN_BUDDY_ICON, bitmap);

		db.insert(TABLE_USERS, COLUMN_LAST_UPDATE, values);
	}

	static void writeBitmap(ContentValues values, String name, Bitmap bitmap) {
		if (bitmap != null) {
			// Try go guesstimate how much space the icon will take when
			// serialized
			// to avoid unnecessary allocations/copies during the write.
			int size = bitmap.getWidth() * bitmap.getHeight() * 2;
			ByteArrayOutputStream out = new ByteArrayOutputStream(size);
			try {
				bitmap.compress(Bitmap.CompressFORMat.PNG, 100, out);
				out.flush();
				out.close();

				values.put(name, out.toByteArray());
			} catch (IOException e) {
				// Ignore
			}
		}
	}

好了,闲话不多说了,今天要说的重点是其中的:

db.insert(TABLE_USERS, COLUMN_LAST_UPDATE, values);

参数问题,这里贴一下API说明:

public long insert (String table, String nullColumnHack, ContentValues values)

Added in API level 1
Convenience method for inserting a row into the database.

Parameters
table	the table to insert the row into
nullColumnHack	optional; may be null. SQL doesn't allow inserting a completely empty row without naming at least one column name. If your provided values is empty, no column names are known and an empty row can't be inserted. If not set to null, the nullColumnHack parameter provides the name of nullable column name to explicitly insert a NULL into in the case where your values is empty.
values	this map contains the initial column values for the row. The keys should be the column names and the values the column values
Returns
the row ID of the newly inserted row, or -1 if an error occurred

好吧,我相信英文不好的同学肯定会与我一样,对第二个参数的说明还是有点糊涂的,行吧,那就Baidu,有道orGoogle翻译,不过这些终究是翻译工具,只能让你有个一知半解,最终还是需要实践才能得出最终答案的。

这里用国语详细解释下这三个参数的意义:

table:数据的表的名称

nullColumnHack:当values参数为空或者里面没有内容的时候,我们insert是会失败的(底层数据库不允许插入一个空行),为了防止这种情况,我们要在这里指定一个列名,到时候如果发现将要插入的行为空行时,就会将你指定的这个列名的值设为null,然后再向数据库中插入。

values:ContentValues对象,差不多就是一个map.通过键值对的形式存储值,键表示的是Column,值就是对应Column的值咯。

关于SQLite的insert方法参数是怎样的就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

您可能感兴趣的文档:

--结束END--

本文标题: SQLite的insert方法参数是怎样的

本文链接: https://lsjlt.com/news/68750.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • SQLite的insert方法参数是怎样的
    这篇文章给大家介绍SQLite的insert方法参数是怎样的,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。看到一个API的参数不懂的时候,我们会做什么呢!Baidu,Google。很少...
    99+
    2024-04-02
  • SQLite数据库中是rowid使用是怎样的
    这篇文章给大家介绍SQLite数据库中是rowid使用是怎样的,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。SQLite数据库中rowid使用SQLite中每个表都默认包含一个隐藏列rowid,使用WITHOUT RO...
    99+
    2023-06-04
  • SQLite的INSERT INTO语句怎么使用
    本篇内容介绍了“SQLite的INSERT INTO语句怎么使用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!SQLite的INSERT I...
    99+
    2023-06-27
  • sqlite数据加密的方法是什么
    SQLite提供了一种称为SQLCipher的加密扩展,可以用于对数据库进行加密。这是SQLite的一个第三方扩展,它提供了对数据库...
    99+
    2024-04-09
    sqlite
  • SQLite中特殊的INSERT语句怎么用
    小编给大家分享一下SQLite中特殊的INSERT语句怎么用,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!SQLite中特殊的INSERT语句 在SQLite中,INSERT是基本语句,...
    99+
    2024-04-02
  • js怎样调用php方法参数
    这篇“js怎样调用php方法参数”文章,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要参考一下,对于“js怎样调用php方法参数”,小编整理了以下知识点,请大家跟着小编的步伐一步一步的慢慢理解,接下来就让我们进入主题...
    99+
    2023-06-06
  • Java中参数传递是怎样的
    这篇文章主要介绍“Java中参数传递是怎样的”,在日常操作中,相信很多人在Java中参数传递是怎样的问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Java中参数传递是怎样的”的疑惑有所帮助!接下来,请跟着小编...
    99+
    2023-06-22
  • sqlite创建数据表的方法是什么
    在SQLite中创建数据表的方法是使用CREATE TABLE语句,语法格式如下: CREATE TABLE table_name ...
    99+
    2024-04-10
    sqlite
  • sqlite删除数据库的方法是什么
    要删除一个SQLite数据库,可以使用以下步骤: 关闭所有与数据库相关的连接。 删除数据库文件。 在命令行或终端中,可以使用如下...
    99+
    2024-04-10
    sqlite
  • sqlite数据库解密的方法是什么
    SQLite数据库可以使用SQLite Forensic Toolkit等专业工具来解密,但这些工具通常需要付费使用。另外,也可以尝...
    99+
    2024-04-10
    sqlite
  • sqlite清空数据库的方法是什么
    要清空SQLite数据库,可以使用以下几种方法之一: 使用DELETE语句删除所有数据: DELETE FROM tab...
    99+
    2024-04-09
    sqlite
  • 数据库中insert的使用方法是什么
    在数据库中,INSERT语句用于向表中插入新的行数据。语法通常如下所示: INSERT INTO table_name (colum...
    99+
    2024-04-02
  • mysql批量insert数据的方法
    这篇文章主要介绍了mysql批量insert数据的方法,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获。下面让小编带着大家一起了解一下。mysql批量insert数据的方法:1、循...
    99+
    2024-04-02
  • innodb_flush_log_at_trx_commit参数性能测试是怎样的
    innodb_flush_log_at_trx_commit参数性能测试是怎样的,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。 ...
    99+
    2024-04-02
  • bzip2 bunzip2 bzcat参数使用是怎样的
    这篇文章将为大家详细讲解有关bzip2 bunzip2 bzcat参数使用是怎样的,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。bzip2 [参数] 文件-c   :将压...
    99+
    2023-06-13
  • sqlite跨数据库查询的方法是什么
    SQLite是一种轻量级的数据库管理系统,通常被用于单个应用程序或小型项目。SQLite不支持直接跨数据库查询,但可以通过以下方法实...
    99+
    2024-04-10
    sqlite
  • Sqlite百万数据查询的方法是什么
    在SQLite中查询大量数据时,可以使用以下方法提高查询性能: 使用索引:在查询经常使用的列上创建索引,可以大大提高查询性能。可以...
    99+
    2024-04-09
    Sqlite
  • python中insert函数的参数有哪些
    在Python中,insert函数用于在指定位置插入元素到列表中。insert函数的参数有两个: index:表示要插入元素的位置...
    99+
    2023-10-25
    python
  • mybatisplus的坑 insert标签insert into select无参数问题的解决
    目录mybatisplus的坑 insert标签insert into select无参数insert into select语句的坑事故发生的经过事故还原出现的原因解决方...
    99+
    2024-04-02
  • oracle异步IO中的filesystemio_options参数是怎样的
    本篇文章给大家分享的是有关oracle异步IO中的filesystemio_options参数是怎样的,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作