精华内容
下载资源
问答
  • 使用python3.6+sqlite3 创建数据库并实现增删改查操作
  • SQLite3创建数据库的方法

    千次阅读 2011-05-21 15:02:00
    SQLite3创建数据库的方法

    界面和MYSQL一样,都是CMD界面,但不是在SQLite.exe中创建数据库:


    有关SQLite3使用:
    1.将sqlite3.exe文件放在任何位置(本人放在E:/Phplearn)
    2.在CMD下进入到E:/Phplearn下(cd .. cd E:/phplearn)
    3.在CMD命令提示符下输入sqlite3.exe test.db(test.db是数据库名)回车,执行完后,命令提示符自动跳转到"SQLITE>"状态。
    注意:这时test.db数据库确实已经创建好了但是还是个临时所以现在要输入SQL命令 ,这时还是看不到这个数据库!等表格创建或关闭sqlite3
    4.create table user(name text); 这时可以看到E:/phplearn下的这个数据库文件了。
    5.如果下次还要使用此数据库时仍然使用sqlite3.exe test.db即可进入此数据库
    7.其它问题可以查看DOC和.help

    展开全文
  • 使用sqlite3创建数据库表的时候需要注意: 1. 不能使用纯数字 2. 不能带有"-","@"等字符。也不能以数字打头。

    使用sqlite3创建数据库表的时候需要注意:

    1. 不能使用纯数字

    2. 不能带有"-","@"等字符。也不能以数字打头。


    一、下面是log打出来的信息:

    DB Error: 1 "unrecognized token: "47464636265757265763393573649""

    DB Query: INSERT INTO 47464636265757265763393573649(role,number,name) values(?,?,?)

    其实,我想用47464636265757265763393573649作为表明,其实是不行的。 不能为纯数字

    二、下面的log,我想以日期作为表名。

    DB Error: 1 "near "2014": syntax error"

    DB Query: INSERT INTO 2014-11-01-02:18:0054(role,number,name) values(?,?,?)

    说明“-”是不行的

    三、下面的log,我想用uri作为表名:

    DB Error: 1 "near ":chat0015453d2792ef": syntax error"

    DB Query: INSERT INTO sip:chat0015453d2792ef@chat.xxx.com(role,number,name) values(?,?,?)

    说明@也是不行的

    有可能sqlite3的底层是将表名作为类名来编程的。因为表的命名规则跟变量的规则是一样的

    展开全文
  • sqlite3创建数据库

    万次阅读 2017-08-03 15:46:26
    1、创建一个新的数据库sqlite3 文件名 先建立一个 Db 目录,并在 Db 目录中创建一个 test.db 数据库文件,打开控制台窗口,命令如下: mkdir Db cd Db sqlite3 test.db   2、打开一个已经存在...
    1、创建一个新的数据库: sqlite3        文件名
    先建立一个 Db 目录,并在 Db 目录中创建一个 test.db 数据库文件,打开控制台窗口,命令如下:
    mkdir Db
    cd Db
    sqlite3 test.db
     
    2、打开一个已经存在的数据库:sqlite3 已经存在的文件名
    创建一个新数据库和打开一个已经存在的数据库命令是一模一样的,如果文件在当前目录下不存在,则新建;如果存在,则打开。
     
    3、导入数据: .read        数据文件
    打开记事本,并将下列 SQL 语句复制到记事本中,保存为 test.sql 到上面说到的 Db 目录下,在命令行环境中输入
    .read    test.sql
    即将所有的数据导入到 test.db 数据库中。
    BEGIN TRANSACTION;
    CREATE TABLE Cars(Id integer PRIMARY KEY, Name text, Cost integer);
    INSERT INTO Cars VALUES(1,'Audi',52642);
    INSERT INTO Cars VALUES(2,'Mercedes',57127);
    INSERT INTO Cars VALUES(3,'Skoda',9000);
    INSERT INTO Cars VALUES(4,'Volvo',29000);
    INSERT INTO Cars VALUES(5,'Bentley',350000);
    INSERT INTO Cars VALUES(6,'Citroen',21000);
    INSERT INTO Cars VALUES(7,'Hummer',41400);
    INSERT INTO Cars VALUES(8,'Volkswagen',21600);
    COMMIT;
    BEGIN TRANSACTION;
    CREATE TABLE Orders(Id integer PRIMARY KEY, OrderPrice integer CHECK(OrderPrice>0),
                                           Customer text);
    INSERT INTO Orders(OrderPrice, Customer) VALUES(1200, 'Williamson');
    INSERT INTO Orders(OrderPrice, Customer) VALUES(200, 'Robertson');
    INSERT INTO Orders(OrderPrice, Customer) VALUES(40, 'Robertson');
    INSERT INTO Orders(OrderPrice, Customer) VALUES(1640, 'Smith');
    INSERT INTO Orders(OrderPrice, Customer) VALUES(100, 'Robertson');
    INSERT INTO Orders(OrderPrice, Customer) VALUES(50, 'Williamson');
    INSERT INTO Orders(OrderPrice, Customer) VALUES(150, 'Smith');
    INSERT INTO Orders(OrderPrice, Customer) VALUES(250, 'Smith');
    INSERT INTO Orders(OrderPrice, Customer) VALUES(840, 'Brown');
    INSERT INTO Orders(OrderPrice, Customer) VALUES(440, 'Black');
    INSERT INTO Orders(OrderPrice, Customer) VALUES(20, 'Brown');
    COMMIT;
    BEGIN TRANSACTION;
    CREATE TABLE Friends(Id integer PRIMARY KEY, Name text UNIQUE NOT NULL,
                                             Sex text CHECK(Sex IN ('M', 'F')));
    INSERT INTO Friends VALUES(1,'Jane', 'F');
    INSERT INTO Friends VALUES(2,'Thomas', 'M');
    INSERT INTO Friends VALUES(3,'Franklin', 'M');
    INSERT INTO Friends VALUES(4,'Elisabeth', 'F');
    INSERT INTO Friends VALUES(5,'Mary', 'F');
    INSERT INTO Friends VALUES(6,'Lucy', 'F');
    INSERT INTO Friends VALUES(7,'Jack', 'M');
    COMMIT;
    BEGIN TRANSACTION;
    CREATE TABLE   Customers(CustomerId integer PRIMARY KEY, Name text);
    INSERT INTO Customers(Name) VALUES('Paul Novak');
    INSERT INTO Customers(Name) VALUES('Terry Neils');
    INSERT INTO Customers(Name) VALUES('Jack Fonda');
    INSERT INTO Customers(Name) VALUES('Tom Willis');
    CREATE TABLE   Reservations(Id integer PRIMARY KEY,
                                                                                   CustomerId integer, Day text);
    INSERT INTO Reservations(CustomerId, Day) VALUES(1, '2009-22-11');
    INSERT INTO Reservations(CustomerId, Day) VALUES(2, '2009-28-11');
    INSERT INTO Reservations(CustomerId, Day) VALUES(2, '2009-29-11');
    INSERT INTO Reservations(CustomerId, Day) VALUES(1, '2009-29-11');
    INSERT INTO Reservations(CustomerId, Day) VALUES(3, '2009-02-12');
    COMMIT;
    BEGIN TRANSACTION;
    CREATE TABLE Names(Id integer, Name text);
    INSERT INTO Names VALUES(1,'Tom');
    INSERT INTO Names VALUES(2,'Lucy');
    INSERT INTO Names VALUES(3,'Frank');
    INSERT INTO Names VALUES(4,'Jane');
    INSERT INTO Names VALUES(5,'Robert');
    COMMIT;
    BEGIN TRANSACTION;
    CREATE TABLE Books(Id integer PRIMARY KEY, Title text, Author text,
                                         Isbn text default 'not available');
    INSERT INTO Books VALUES(1,'War and Peace','Leo Tolstoy','978-0345472403');
    INSERT INTO Books VALUES(2,'The Brothers Karamazov',
                                                     'Fyodor Dostoyevsky','978-0486437910');
    INSERT INTO Books VALUES(3,'Crime and Punishment',
                                                     'Fyodor Dostoyevsky','978-1840224306');
    COMMIT;
    4、列出所有的数据表:  .tables
    完成上面所有的工作以后,我们就可以列出所有的数据表了
    SQLite3 <wbr>命令行参数

    5、显示数据库结构: .schema
    其实就是一些 SQL 语句,他们描述了数据库的结构,如图
    SQLite3 <wbr>命令行参数
    6、显示表的结构: .schema     表名
    SQLite3 <wbr>命令行参数

    7、导出某个表的数据: .dump    表名

    SQLite3 <wbr>命令行参数
    五、数据显示相关命令
     
    1、设置分隔符: .separator       分隔符
    我们可以首先运行 SELECT * FROM Names; ,可以看到默认的分隔符是 | 
    运行.separator  @@@@@@@@@ 以后,再 SELECT * FROM Names;,可以看到分隔符已经变成  @@@@@@@@@@ 了
    SQLite3 <wbr>命令行参数
    2、设置显示模式: .mode       模式
    有好几种显示模式,默认的是 list 显示模式,一般我们使用 column 显示模式,还有其他几种显示模式可以 .help 看 mode 相关内容。看看下面的图,和上面是不是显示的不一样了?
    SQLite3 <wbr>命令行参数

    3、显示标题栏: .headers     on
    看看,是不是又不太一样了?
    SQLite3 <wbr>命令行参数

    4.列出当前显示格式设置情况: .show
    SQLite3 <wbr>命令行参数
    展开全文
  • # 如果该数据库名称不存在则自动创建数据库 # 接收对象=链接数据语句("要连接的数据库名称") connect = sqlite3.connect("testsqlite.db") # 第二步,获取数据库游标,并用变量接收...
    # (重点)sqlite示例   创建表,写数据
    # 现将sqlite3库导入进来
    import sqlite3
    
    # 第一步,链接数据,括号里放的是要连接的数据库的名称
    # 如果该数据库名称不存在则自动创建数据库
    # 接收对象=链接数据语句("要连接的数据库名称")
    connect = sqlite3.connect("testsqlite.db")
    
    # 第二步,获取数据库游标,并用变量接收
    # 注意不获取游标是无法操作数据库的,游标就像鼠标是指向
    cursor = connect.cursor()
    
    # 第三步,写一个要执行的sql语句,如下:
    # sql = "CREATE TABLE 自定义表名(字段(第一列的名称) 数据类型 约束条件)"
    # 如果只需要一个字段这样写一个就行了,如果多个字段用逗号分隔就行 下面是两个字段的写法
    # "CREATE TABLE IF NOT EXISTS student"这个sql语句中IF NOT EXISTS的意思是如果数据表不存在就创建
    sql = "CREATE TABLE student(id INT PRIMARY KEY, name VARCHAR(10) not null)"
    
    #PRIMARY KEY是代表设置主键,在后面添加AUTOINCREMENT字段,添加的时候填入null值会自增主键,所以主键是整数类型
    
    # 第四步,执行sql语句,用游标的execute()方法,把写好的sql语句放进去执行:
    cursor.execute(sql)
    
    # 执行完以后:数据库,数据表创建完成,然后
    # 第五步,关闭游标
    cursor.close()
    
    # 第六步,提交事务
    connect.commit()
    
    # 第七步,关闭数据库
    connect.close()
    
    # 数据库语法详解
    # SQL
    # structured query language 结构化查询语言。专门对数据库进行查找、增加、修改、删除、统计的操作语言。
    # CURD 增删查改 create update retrieve delete。
    # 书写风格,关键字大小写都行,建议大写。表名大小写都行,但是在一些数据库中不区分大小写,建议小写。
    
    # (重要)基本语法。
    # 1. 查找
    # 例句:"SELECT * FROM student;" 查询所有
    # SELECT 字段1,字段2,字段3,...  FROM 表名;      python中返回值形如[(1, 502班, 小明, 男), (), ()]。
    # 字段比较多时简写为  SELECT * FROM 表名;       由于数据库执行时会把*转换为字段再执行,性能极微小下降。
    # SELECT * FROM 表名 WHERE 字段1 = 过滤值,字典2=过滤值 ;       where限定条件查找。
    # 2. 添加
    # 例句:"INSERT INTO student (id name) VALUES (1,"小红");"
    # INSERT INTO 表名 字段1,字段2,...   VALUES (1, "小明", "男");
    # 简写 INSERT INTO 表名 VALUES (1, "小明", "男");
    # 3. 修改
    # 例句:"UPDATE 表名 SET name="wode" WHERE id=1;"
    # UPDATE 表名 SET 字段1=新值,字段2=新值 WHERE 字段1 = 过滤值;
    # 注意没有where条件限定行的话将会更新整张表。
    # 4. 删除
    # 例句:"DELETE FROM student;"
    # DELETE FROM 表名;                 注意会删除整张表。
    # DELETE FROM 表名 WHERE 字段1 = 过滤值;       限定条件删除某些行。
    # 5. 创建表
    # CREATE TABLE 表名 {
    #     字段类型 字段名 其它关键字(主键 备注),
    #     INT   id   PRIMARY KEY,
    #     VARCHAR(20) username ,
    # }
    
    # 数据库字段类型
    # 数据库创建表示要事先告诉计算机硬盘,每张表的每个字段存什么类型、将要存储的内容大还是小。长度过小,内容值存不进去,长度太大,浪费硬盘空间。我们需要选择合适的类型和长度。
    # 各数据库字段类型关键字基本一致。mysql oracle postgresql常用字段类型如下:
    # 1. 整数
    # 整数:常用INT   INTEGER   占4个字节,2**32,可以表示常用范围整数。
    # (不常用)TINYINT(1字节)  SMALLINT(2字节) MEDIUMINT(3字节)
    # BIGINT(8字节) 适用身份证号、VIP号码比较长的编号。
    # 2. 浮点数
    # 常用 FLOAT(4字节) 单精度小数 。 即使是单精度,范围也不小。
    # DOUBLE(8字节) 双精度小数。
    # 场景 金钱计算,轨道计算。
    # 3. 字符串
    # CHAR  char(10) 可以存储长度(字节长度)不超过10的字符串。例如"hello"。但由于长度按照字节判断,存unicode编码的中文只能存3个。
    # 常用  VARCHAR 0-65535字节,variable char 可变字符串。VARCHAR(5)  可以存储5个中文或5个英文字母。场景 用户名、家庭住址。
    # TEXT TINYTEXT  medium  longtext , 场景 大文本存储,书籍文章、用户反馈。
    # BLOB medium  longblob ,二进制文件, 场景 图片、视频。但一般不在数据库中存储图片和视频
    # 因为会增加数据库的计算压力和带宽传输压力和备份还原的难度和用户信息静态资源耦合到一起,解决方案是 图片视频存到普通文件目录下,数据库中存储文件路径。
    # 4. 日期
    # DATE    日期, 形如"2018-11-08"
    # 常用 DATETIME  日期时间, "2018-11-08 16:52:30"  "2018-11-08 16:52:30.123" "2018-11-08 16:52:30 GTM+8"
    # 常用 TIMESTAMP 时间戳, 1541667270  1541667270.7252207   1541667270725
    
    # sqlite的字段比较简化:
    # INTEGER     整数
    # REAL        浮点数
    # TEXT        字符串
    # NULL        什么都不存
    
    """
    (了解)数据库驱动:数据库有自己本身的软件构造和操作语言,数据库暴露出操作接口,方便跟其它各种编程语言对接。编程语言到数据库的对接中介 叫驱动。所以我们用python操作数据库要使用驱动。
    
    步骤:
    1. 引入驱动包
    2. 连接数据库,得到会话。   中大型数据库需要先用户名、密码验证,再创建数据库,再连接数据库;而轻量级的sqlite省略了前面的过程直接连接,如果这个数据库不存在的话,会新生成一个库,数据保存在一个单db文件中。
    (了解)sqlite3.connect(':memory:') 数据库会创建在内存中,脚本正常运行,只不过看不到具体数据库,主要用途测试。
    3. 生成游标。  游标:游标是对数据库某一行某一格进行增删改查的操作者,就好像操作excel表格时的鼠标。
    4. 插入一些数据。  注意主键id列不能重复。
    5. 关闭游标。   这一步可以省略。
    6. 提交 commit。   除了查询,增加、修改、删除操作都需要在执行sql提交,否则不生效,好像平时用软件保存时的确认对话框。
    7. 断开会话连接,释放资源。
    """
    
    """
    可能的异常:
    1. 唯一约束错误,主键重复。 sqlite3.IntegrityError: UNIQUE constraint failed: student.id
    2. 表已存在重复创建。sqlite3.OperationalError: table student already exists
    3. 无法操作已关闭的数据库。sqlite3.ProgrammingError: Cannot operate on a closed database.
    """

     

    展开全文
  • SQLite 3创建 数据库 和 表

    千次阅读 2019-01-23 17:41:54
    新学SQLite 3在Android中的应用,下载了SQLite却不知从何下手,记载一下自己探索的过程,已被不时之需。 step 1: 下载SQLite 3, 这一步比较简单,免安装,免配置环境。  可以从百度里下载一个sqlite,解压后无需...
  • sqlite3创建数据库--mac终端界面

    千次阅读 2014-11-19 15:07:36
    例如,我们想在文档下的sqlite文件夹下创建数据库,我们需要先装载...使用sqlite3 + 数据库名 可以打开数据库,我们同样也可以用该方法创建数据库 例如,我们想创建名为test的数据库,需执行如下命令 sqlite3 t
  • 使用sqlite3 创建数据库

    千次阅读 2016-05-13 16:21:08
    #import @interface DataManager : NSObject +(instancetype)shared; //打开数据库 -(void)openDataBase;...//关闭数据库 ...//创建数据表 -(void)createTable; //插入数据
  • 参考自:http://blog.chinaunix.net/uid-1844931-id-2981048.html  ... 有关SQLite3使用: 1.将sqlite3.exe文件放在任何位置(本人放在E:\Php) 2.在CMD下进入到E:
  • SQLite(创建数据库)

    2013-09-03 10:32:54
    SQLite(创建数据库)
  • sqlite3怎么固定创建数据库的路径 各位大神们,用sqlite3的时候创建数据库,发现只能在当前路径创建,觉得这样有点乱,想固定一下sqlite3创建数据库的路径,求问要怎么弄,我是linux系统 ...
  • SQLite 创建数据库

    2020-12-16 17:21:24
    SQLite 创建数据库 SQLitesqlite3 命令被用来创建新的 SQLite 数据库。您不需要任何特殊的权限即可创建一个数据。 语法 sqlite3 命令的基本语法如下: $sqlite3 DatabaseName.db 通常情况下,数据库名称在 ...
  • Delphi 10下使用FireDAC操作SQLite创建数据库的Demo,可用于win32、安卓及iOS平台。
  • (sqlite)创建数据库错误syntax error

    千次阅读 2018-10-16 15:43:08
    SQLite创建数据库时出现错误: near “sqlite3”:syntax error 这是因为当前路径下已经有数据库了,换一个路径创建数据库就可以。 我的sqlite是解压在C盘的sqlite3文件夹下,当在C盘中直接输入命令时,会默认在...
  • sqlite3创建数据库文件到指定路径

    千次阅读 2018-03-21 10:32:26
    想要把sqlite3创建数据库文件到指定路径:(windows 为例)1.cmd进入到你想要保存文件的路径2.sqlite3 database.db
  • sqlite创建数据库,表,插入查看数据

    千次阅读 2014-10-08 20:37:47
    sqlite创建数据库,表,插入查看数据 Posted on 2012 年 12 月 20 日 IOS sqlite数据库操作。步骤是: 先加入sqlite开发库libsqlite3.dylib, 新建或打开数据库, 创建数据表, 插入数据,...
  • 有关SQLite3使用: ...3.在cmd命令提示符下输入sqlite3.exe test.db(test.db是数据库名)回车,执行完后,命令提示符自动跳转到"sqlite>"状态。 注意:这时test.db数据库确实已经创建好了但是还是
  • iOS学习之sqlite创建数据库,表,插入查看数据

    万次阅读 多人点赞 2012-06-29 13:55:26
    步骤是:先加入sqlite开发库libsqlite3.dylib,新建或打开数据库创建数据表,插入数据,查询数据并打印1、新建项目sqliteDemo,添加使用sqlite的库libsqlite3.dylib2、sqlite 的方法sqlite3 *db, 数据库句柄,跟...
  • 使用Swift和SQLite创建iOS数据库应用 Build iOS Database Apps with Swift and SQLite What You'll Learn: How to create database and database applications using iOS and Swift How to insert, select, edit, ...
  • 本人arcgis爱好者,日常工作中用arcgis数据库交换文件,最近发现arcgis 门户网站发现sqlite软件创建数据库方法,但按照上面方法创建数据库始终没有成功,最后通过多方探索交流最终找到创建方法并成功。在此和大家...
  • 假如有如下的代码,那么会默认创建一个数据库“sample.db”,并且该数据库创建于tomcat目录中的bin目录下private String driverClass = "org.sqlite.JDBC"; private String jdbcURL = "jdbc:sqlite:sample.db"; ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 108,594
精华内容 43,437
关键字:

sqlite3创建数据库