sqlite3

centos sqlite3安装及简单命令

匿名 (未验证) 提交于 2019-12-03 00:04:02
安装: 方法一: wget http://www.sqlite.org/sqlite-autoconf-3070500.tar.gz tar xvzf sqlite-autoconf-3070500.tar.gz cd sqlite-autoconf-3070500 ./configure make sudo make install 方法二: sudo yum install sqlite-devel 方法三: sudo gem install sqlite3-ruby 命令: 查看版本信息: #sqlite3 -version sqlite3终端进入命令: # sqlite3 查看数据库文件信息命令(注意命令前带字符'.'): sqlite>.database 查看所有表的创建语句: sqlite>.schema 查看指定表的创建语句: sqlite>.schema table_name 以sql语句的形式列出表内容: sqlite>.dump table_name 设置显示信息的分隔符: sqlite>.separator symble Example:设置显示信息以‘:'分隔 sqlite>.separator : 设置显示模式: sqlite>.mode mode_name Example:默认为list,设置为column,其他模式可通过.help查看mode相关内容

Flask Bug记录之JinJa2.exceptions.UndefinedError: 'sqlite3.Row object' has no attribute 'get'

匿名 (未验证) 提交于 2019-12-02 23:59:01
py文件定义db的工厂函数如下 def get_db(): if "db" not in g: g.db = sqlite3.connect( current_app.config["DATABASE"], detect_types=sqlite3.PARSE_DECLTYPES ) g.db.row_factory = sqlite3.Row return g.db <nav> <h1>Flaskr</h1> <ul> {% if g.user %} <li><span>{{ g.user.get("username") }}</span></li> <li><a href="{{ url_for('auth.logout') }}">Log Out</a></li> {% else %} <li><a href="{{ url_for('auth.register') }}">Register</a></li> <li><a href="{{ url_for('auth.login') }}">Log In</a></li> {% endif %} </ul> </nav> Bug 1、第一反应是 sqlite3 不支持 sqlite3.Row 属性 特意查了官方文件,明确示例表示,是支持的。 2、检查代码的正确性, 没有书写错误 3、有回头仔细看了下错误提示信息, 说的是

sqlite3

匿名 (未验证) 提交于 2019-12-02 23:48:02
#################################################################### sqliteѧϰ: 参考: https://www.liaoxuefeng.com/wiki/1016959663602400/1017801751919456 https://www.runoob.com/sqlite/sqlite-intro.html https://www.cnblogs.com/xiaobingqianrui/p/8461707.html SQLite是一种嵌入式数据库,它的数据库就是一个文件。 Python就内置了SQLite3,所以,在Python中使用SQLite,不需要安装任何东西,直接使用。 sqlite3数据库和sqlite3驱动 Python定义了一套操作数据库的API接口,任何数据库要连接到Python,只需要提供符合Python标准的数据库驱动即可。 由于SQLite的驱动内置在Python标准库中,所以我们可以直接来操作SQLite数据库。 如果该数据库操作不需要返回结果,就直接使用conn.execute查询,根据数据库事物隔离级别的不同,可能修改数据库需要conn.commit 如果需要返回查询结果则用conn.cursor创建游标对象cur,通过cur.execute查询数据库,

sqlite3.OperationalError: database is locked

匿名 (未验证) 提交于 2019-12-02 23:38:02
情景描述 windows上代码文件,设置为共享目录,mount到linux使用。运行python manage.py migrate,出现错误 报错 [root@localhost sqlalchemy]# python manage.py db migrate /root/py_env/coacs/lib/python3.6/site-packages/flask_sqlalchemy/__init__.py:794: FSADeprecationWarning: SQLALCHEMY_TRACK_MODIFICATIONS adds significant overhead and will be disabled by default in the future. Set it to True or False to suppress this warning. 'SQLALCHEMY_TRACK_MODIFICATIONS adds significant overhead and ' INFO [alembic.runtime.migration] Context impl SQLiteImpl. INFO [alembic.runtime.migration] Will assume non-transactional DDL. Traceback (most

3 数据库图形管理工具sqlite3

匿名 (未验证) 提交于 2019-12-02 22:59:29
数据库图形管理工具sqlite3 常用数据库图形管理工具 navicat系列 navicat for sqlite 优点navicatForMysql用户多 表多的时候界面方便,缺点一是付费二是体验一般。 datagrip , jetbrains出品,优点一个软件连接对个数据库;操作习惯跟pycharm类似;pycharm pro集成。缺点用户少;驱动不好下。 pycharm3中database工具使用 展开目录,找到 表。 schemas 模型,理解为打的仓库,默认有一个仓库main, main仓库下是我们建的表。 sqlite-masters是数据库系统内置表,不用关注它,不能删除。 不用关注collations文件夹 双击表查看表数据。 图形化界面 加减号增加修改数据,注意修改完需要submit提交 。 点击connect图标,打开sql命令行工具,可以在里面写sql语句,点击execute按钮执行,得到结果集。 选中库, 右键new-table, 可视化界面创建表。 (了解)datagrip操作方法(pycharm集成database工具为例子): pycharm左下角图标调出工具栏,打开pycharm右侧Database工具。 点加号-DataSource数据源-sqlite 。 弹出的对话框选择 drivers-sqlite(Xerial) 点击download

django连接sqlserver

匿名 (未验证) 提交于 2019-12-02 22:56:40
方法一: 1、需要安装pymssql   pip install pymssql 2、使用方法: import pymssql conn=pymssql.connect(host='127.0.0.1',user='user',password='password',database='MyDB') cur=conn.cursor() cur.execute('select * from table1')#如果是插入、删除、更新语句切记要写提交命令con.commit() print (cur.fetchall()) cur.close() conn.close() 方法二: 1、安装必要的组件: 2、修改settings.py的DATABASES: DATABASES = { # 'default': { # 'ENGINE': 'django.db.backends.sqlite3', # 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'), # } 'default': { 'ENGINE': 'sqlserver', 'NAME': 'MyDB', 'HOST': '127.0.0.1', 'PORT': '1433', 'USER': 'user', 'PASSWORD': 'password, 'OPTIONS': {

python链接sqlite3插入input显示No such column:xxx

匿名 (未验证) 提交于 2019-12-02 22:54:36
sqlite3是一个数据库,他可以由python,当你想要让用户输入一些信息并插入到sqlite3数据库里时,就要用到python的一个代码:input() 下面给大家看一段代码 import sqlite3 conn = sqlite3.connect('test.db') conn.execute('CREATE TABLE TEST NAME TEXT NOT NULL SEX TEXT NOT NULL') a = input("输入你的名字: ") b = input("输入你的性别: ") conn.execute("INSERT INTO TEST VALUES (%s,%s)" % (a,b)) ## 因为input储存的是字符串,所以这里应该没问题 conn.commit() conn.close() 这样看应该是没什么问题,但是还是会报错:No such column:xxx(xxx是你input输入的信息) 这是怎么回事呢?input不是本来就是字符串吗? 其实我也不知道为什么,但是%s这里必须加一对引号:'%s' 改后的代码片段: conn.execute("INSERT INTO TEST VALUES ( ' %s ' , ' %s ' )" % (a,b)) 改好后的全部代码: import sqlite3 conn = sqlite3.connect

Django使用mysql存储数据

匿名 (未验证) 提交于 2019-12-02 22:02:20
在Django中默认是用sqlite3作为数据库存储的,但如果使用mysql存储数据的话需要怎么配置django呢? 1. 在django项目中配置settings.py文件 打开settings.py文件后在里面找到 DATABASES 配置项 DATABASES = { # 'default': { # 'ENGINE': 'django.db.backends.sqlite3', # 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'), # } 'default' : { 'ENGINE' : 'django.db.backends.mysql', 'NAME' : 'notes', 'USER' : 'root', 'PASSWORD' : 'admin', 'HOST' : '127.0.0.1', 'PORT' : '3306', } } 我们可以将默认的数据库引擎给注释掉,然后将默认的数据库引擎配置为mysql 2. 安装pymyqsl模块 pip install pymysql 3. 在项目中导入pymysql模块 我们需要站项目中导入pymysql模块,这里的项目指的并不是app,而是创建项目时生成的文件夹,里面包含有settings.py、urls.py等文件 在 __init__.py 文件中导入模块 import

Linux:交叉编译sqlite3

匿名 (未验证) 提交于 2019-12-02 21:53:52
版权声明:版权所有!https://blog.csdn.net/weixin_38184741 https://blog.csdn.net/weixin_38184741/article/details/86544853 背景: 交叉编译程序时,报错如下: /opt/hisi-linux/x86-arm/aarch64-himix100-linux/host_bin/../lib/gcc/aarch64-linux-gnu/6.3.0/../../../../aarch64-linux-gnu/bin/ld: cannot find -lsqlite3 collect2: error: ld returned 1 exit status make: *** [client] Error 1 提示没有sqlite3的库。需要我们交叉编译一下。 下载地址: https://sqlite.org/2018/sqlite-autoconf-3260000.tar.gz 编译过程 : tar -vxf sqlite-autoconf-3260000.tar.gz cd sqlite-autoconf-3260000/ mkdir __install ./configure --host=arm-linux --prefix=$PWD/__install CC=aarch64-himix100

svn报错:[Previous operation has not finished; run 'cleanup' if it was interrupted] 的排错过程

旧城冷巷雨未停 提交于 2019-12-02 18:46:50
今天在打开某一文档的情况下,使用SVN更新文档,在更新的过程中报错,提示需要执行clean up,果断右键执行clean up,又提示一个新的错误:"Previous operation has not finished; run 'cleanup' if it was interrupted",此后又尝试了该项目目录树不同目录进行更新或者提交,甚至把该项目删除重新check out,都会出现同样的问题; 这个时候查阅了一下资料得知:本地的SVN客户端中有一个嵌入式DB(里面大约有10多个表)SQLite,来保存SVN中管理的文件类型,项目结构树,用户操作进度等,所以我们可以大胆假设下,上述我们提交代码过程中,SVN客户端用户代码提交操作非正常的终止,导致sqlite中某个表中用来记录用户对项目A的操作(增删改等)的数据来不及更改,由于我们后续的所有针对项目A的操作,都优先从该表中检查项目A是否有未完成的操作,如果存在未完成操作就会提示"Previous operation has not finished",顺着这个思路,如果我们找到这个表,且把这个表中相关记录删除,是不是就可以解决这个问题,通过查阅相关资料发现: 在使用了svn的项目中,在项目根目录会有一个.svn文件夹,点击进入后结构如下: 就是箭头指向的这个文件,它就是SQLite数据库文件,我们可以用SQLite3