SQLite3学习笔记----创建数据库的两种方式
今天研究学习SQLite,刚开始创建数据库,就遇到了一个坑,是自己粗心了,特记录一下。
实验环境:
OS:Ubuntu18.04
创建数据库名称:test.db
实验步骤:
1.检查是否已经安装了SQLite
进入命令行,切换到准备建立数据库的文件夹,输入SQLite3

显示已经安装了SQLite
2、创建数据库
看网上资料,创建数据库,SQLite3 databaseName
输入SQLite3 test.db
报错,错误信息:Error: near "sqlite3":syntax error

查网上资料,都是说的是这个指令:sqlite3 databasename
3.在一台Windonws的电脑上,下载安装了Sqlite,配置好环境变量,进入命令行,输入SQLite3,顺利进入,再输入sqlite3 test.db,仍然报这错误信息。

后来退出sqllite,直接在命令行输入sqlite3 test.db,成功了,并且进入了sqlite>,创建表,插入输入,退出后,查看文件夹下,已经有了test.db这个文件

上面是未创建数据库前的查询
退出SQLite,直接在命令行输入:sqlite3 test.db,成功

查询文件夹下,已经有了test.db这个文件夹
4.参照下图,进入SQLite后,输入.open fileName这个方式,也可以创建数据库,如果filename是已经建立的数据库文件,则打开。
如果不存在,则建立这个数据库。

使用.open Test1.db,创建这个数据库

查看文件夹下,已经有了这个数据库,Test1.db。

5.如何使用呢?
在命令行输入sqlite3,进入sqlite>

使用.open filename,filename为你的数据库文件,打开后,开始使用。
6.我想Ubuntu下,也应该是这个问题,直接切换到待建数据库的文件夹,输入sqlite3 test.db

输入sqlite3 test.db,没有报错,但在创建表的时候,却报错,Error:unable to open database "test.db":unable to open database file
退出来以后,使用ls命令,发现当前文件夹下也没有test.db这个文件,这又是什么原因呢?
分析,应该是当前账号对/opt/database这个文件夹的操作权限不够,才导致不能在这个文件夹下建立数据库文件。
设置/opt/database文件夹的操作权限
cd..
sudo chmod 777 database

重新进入database文件夹,cd database
重复按照前面步骤开始建立数据库
sqlite3 test.db
create table employee(id integer,name text)
insert into employee values(1,'zhang san')
insert into employee values(2,'Li si‘)
select * from employee
.exit

在linux下也成功建立了sqlite的数据库。
尝试第2种方式,在linux下建立数据库,同样成立,这里就不重复了。
SQLite3学习笔记----创建数据库的两种方式的更多相关文章
- python 学习笔记(二)两种方式实现第一个python程序
在交互模式下: 如果要让Python打印出指定的文字,可以用print语句,然后把希望打印的文字用单引号或者双引号括起来,但不能混用单引号和双引号: >>> print 'hello ...
- Android开发之使用sqlite3工具操作数据库的两种方式
使用 sqlite3 工具操作数据库的两种方式 请尊重他人的劳动成果,转载请注明出处:Android开发之使用sqlite3工具操作数据库的两种方式 http://blog.csdn.net/feng ...
- 【java并发】传统线程技术中创建线程的两种方式
传统的线程技术中有两种创建线程的方式:一是继承Thread类,并重写run()方法:二是实现Runnable接口,覆盖接口中的run()方法,并把Runnable接口的实现扔给Thread.这两种方式 ...
- 创建TabHost的两种方式的简单分析
最近做了一个TabHost的界面,在做的过程中发现了一些问题,故和大家分享一下. 首先我的界面如下: 目前就我所知,创建TabHost有两种方式,第一种是继承TabActivity类,然后用getTa ...
- 创建线程的两种方式比较Thread VS Runnable
1.首先来说说创建线程的两种方式 一种方式是继承Thread类,并重写run()方法 public class MyThread extends Thread{ @Override public vo ...
- .Net 中读写Oracle数据库常用两种方式
.net中连接Oracle 的两种方式:OracleClient,OleDb转载 2015年04月24日 00:00:24 10820.Net 中读写Oracle数据库常用两种方式:OracleCli ...
- ubuntu创建用户的两种方式
ubuntu创建用户有两种方式: useradd和adduser 这两者,就像零件与产品的关系.useradd是DIY,需要自己调配,adduser是品牌机,拿来就能用. 对于创建一般用户来讲,use ...
- Spring创建JobDetail的两种方式
一.Spring创建JobDetail的两种方式 二.整合方式一示例步骤 1.将spring核心jar包.quartz.jar和Spring-context-support.jar导入类路径. 2.编 ...
- Java并发基础01. 传统线程技术中创建线程的两种方式
传统的线程技术中有两种创建线程的方式:一是继承Thread类,并重写run()方法:二是实现Runnable接口,覆盖接口中的run()方法,并把Runnable接口的实现扔给Thread.这两种方式 ...
随机推荐
- 简单CSS3代码实现立方体以及3D骰子
1 实现3D立方体 首先准备好UL以及6个Li: 代码如下 ul { position: absolute; top: 50%; left: 50%; transform:translate(-50% ...
- emmc boot_config文件不存在
/******************************************************************************* * emmc boot_config文 ...
- Log4j(一):Log4j将日志信息写入数据库
前言 为了监听一些数据的采集等功能,需要随时监听设备的状态,所以需要运行的时候将日志打入到数据库中. 正文 第一步: 首先是jar包,由于我使用的是springboot,所以,在springboot- ...
- WIN 10环境下JDK的安装和环境配置
在做测试的过程中,诸如Selenium.Appium.Macaca.Airtest.RobotFramework.Jmeter等框架或工具都需要用到一样基础的环境JAVA JDK.最近刚好换了电脑,就 ...
- python list 中元素的统计与排序
1. 用count和dict. dict的存储是散乱的, 不方面打印. 2. 用sorted. 注意, 得到的是一个元组list, 而不再是dict. dict_x = {} for item ...
- java之美妙的注解
注解 一.认识注解 先看百度百科对java注解的解释: 定义:注解(Annotation),也叫元数据.一种代码级别的说明.它是JDK1.5及以后版本引入的一个特性,与类.接口.枚举是在同一个层次.它 ...
- Ant build.xml相关属性详解
关键字: ant build.xml Ant的概念 可能有些读者并不连接什么是Ant以及入可使用它,但只要使用通过Linux系统得读者,应该知道make这个命令.当编译Linux内核及一些软件的源程序 ...
- am335x_y蜂鸣器驱动
修改文件:1.板级文件/arch/arm/mach-omap2/board-am335xevm.c static struct platform_device buzzer_device= { .na ...
- [C++ Primer] 第6章: 函数
参数传递 const形参和实参: 顶层const作用于对象本身, 和其他初始化过程一样, 当用实参初始化形参时会忽略掉顶层const, 换句话说, 形参顶层const被忽略掉了, 当形参有顶层cons ...
- OneProxy常用参数说明
5.2.OneProxy常用参数说明 OneProxy的所有可用参数可通过oneproxy --help-all查看.所有参数均可以写入文件中,由OneProxy启动时加载 5.2.1.基本参数 -- ...