mariadb/mysql查询生成器主要用于在表中插入和更新python字典。

mariasql的Python项目详细描述


#mariasql

现在选择数据很容易,但是插入和更新数据很烦人。

*https://git.osuv.de/m/mariasql
*mirror,issues&prs:https://gitlab.com/markuman/mariasql



启动一个临时mariadb
`docker run-d-p 3307:3306--rm—name mariadb-e mysql_root_password=password mariadb`


>启动python3并转到

``python
>;导入mariasql
>;db=mariasql.mariasql(host='127.0.1',port=3307)
>;db.query('create database mariasql;')
()
>;>>db.use('mariasql')
>;>我们可以基于dict定义创建表
>;>mytable=dict()
>;>mytable['id']=int
>;>mytable['name']=str
>;>mytable['some shitty col模糊名称]=float
>>;gt>gt>gt;db.创建"测试表",mytable;
(>br/>>>>gt>gt>gt;db.显示"表"
>[{"表"在"测试表"中的应用;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>;;现在我们在创建表中插入一个dict,将dict插入到创建表中
>>>;data=dict()
>>>;gt>>>;data['id']=12
>>>;gt;gt;gt;gt;db.创建表('id''id''id''>>>>>>克t;gt;data['name']="alf"
>;gt;data['some shitty column name']=3.1415
>;gt;db.insert('测试表',数据)

()
让我们从create table中读取
>;>;dataset=db.query('从测试表中选择*)
>;>;dataset
[{id':12,'name':'alf','some shitty列名:3.1415}]
>;>>db.query('show create table test_table')
[{table':'test_table','create table':'create table`test_table'(\n`id`int(11)default null,\n`name`varchar(255)default null,\n`some shitty column name` double default null\n)engine=innodb deFAULT CHARSET=utf8'}]
```

# Properties

| variabele | default value |
| --- | --- |
| host | localhost |
| port | 3306 |
| user | root |
| password | password |
| db | mysql |
| charset | utf8mb4 |

# Methods

* `db.use(dbname)`
*更改数据库
*`db.show_tables()`
*获取选定数据库中当前表的列表
*`db.query(sql)`
*执行原始sql命令
*`db.create_db(db name)`
*如果不存在,则创建新数据库
*`db.create_table(name,tabledef=none)`
*when`tabledef`没有给出,`name`必须是一个原始的sql字符串,当'tabledef'是dict()并且其'keys'只是数据类型定义时,将执行
*基于此dict的表将创建
*使用dict()定义时的数据类型限制
*`str`->;`varchar(255)`
*`int`->;`int`
*`float`->;`double`
*`dict`->;`json`
*`db.insert(table,data,on_duplicate=false)`
*`data`必须是一个'dict()`带'keys',在sql表中以'column\name'形式存在。但它不能包含所有列名。
*当"on_duplicate"设置为"true"时,当pks已存在于表中时,它将执行更新。
*`db.insert_on_duplicate(table,data)`
*仅使用"on_duplicate=true"包装"db.insert()"。

todo

*some测试和设置ci/cd
*更新方法
*插入/更新dict列表

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
selenium webdriver找不到与包含Java的字符串匹配   java在Edittext中输入十进制值?   java有没有办法检查RDBMS数据库表的读写信息?   安卓 ZipArchiveEntry提供java。尼奥。查塞特。格式错误的异常   elasticsearch弹性搜索java特定配置   java只使用类属性jdk1的子集过滤ArrayList中的重复项。6.   java如何使用GPG加密对HDFS中的文件进行加密/解密   Java输出XML文件和CDATA   java无法删除另一个片段中的子片段   java javafx黑屏错误边框窗格。设定中心   这两个程序之间的java差异   restlet中的java“找不到(404)”错误   java使用JAX WS连接到SOAP   javafx:表行闪烁   java无法从“活动”文件夹打开图像?   java Windows在单击按钮时未打开   JAVAutil。scanner Java scanner hasNextLine返回false   java使用api v3 安卓获取youtube私有播放列表   java修复int转换并为类添加一个返回