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.这两种方式 ...
随机推荐
- Jenkins上War文件部署实战
War文件部署 1.jenkins需要安装Deploy Plugin插件:在[系统管理]-[插件管理]下,如果没有安装,则在可选插件下找到该插件,然后安装(如图是1.5版本安装好的截图) 2.在构建的 ...
- Jmeter-配置元件
CSV Data Set Config(CSV数据集配置) 参考:http://www.cnblogs.com/yanzhe/p/7728139.html DNS Cache Manager(DNS缓 ...
- endnote x7 破解版 关联word2010/2013
方法/步骤 1 首先在已安装EndnoteX7的条件下,打开word2013在工具栏上方未见“EndnoteX7”标识,则需要将两者关联. 2 打开word左上角的“文件”,然后点开“选项” 3 ...
- LINQ to SQL 建立实体类 (转)
http://www.cnblogs.com/DebugLZQ/archive/2012/11/14/2770449.html 使用LINQ to SQL时,需要首先建立用于映射数据库对象的模型,也就 ...
- System.IO.Path类
System.IO.Path为路径的操作封装了很多很有的东西,利用该类提供的方法能够快速处理路径操作的问题.下面详细了解一下. 1.属性 属性太复杂了,反映什么系统平台的信息,看不懂,等以后看得懂了再 ...
- VMware ESX常用命令 和 IP 地址修改
一. VMware ESX Command 1. 看你的esx版本 vmware –v 2. 查看显示ESX硬件,内核,存储,网络等信息 esxcfg-info -a(显示所有相关的信息) esxcf ...
- JZ2440 裸机驱动 第5章 GPIO接口
本章目标: 掌握嵌入式开发的步骤:编程.编译.烧写程序.运行 通过GPIO的操作了解软件如何控制硬件 5.1 GPIO硬件介绍 S3C2440A有130个多功能输入/输出口引脚 ...
- SpringCloud初体验:三、Feign 服务间调用(FeignClient)、负载均衡(Ribbon)、容错/降级处理(Hystrix)
FeignOpenFeign Feign是一种声明式.模板化的HTTP客户端. 看了解释过后,可以理解为他是一种 客户端 配置实现的策略,它实现 服务间调用(FeignClient).负载均衡(Rib ...
- Python VIL Realse
#!/usr/bin/python #-*- coding:utf-8 –*- import os import sys import re import shutil import xlrd imp ...
- 编译sass,遇到报错error style.scss (Line 3: Invalid GBK character "\xE5")
今天学习sass,写了一行中文注释,结果却遇到了报错: cmd.exe /D /C call C:/Ruby23-x64/bin/scss.bat --no-cache --update style. ...