标签: python

AttributeError: 'NoneType' 对象没有属性 'value' - pgAdmin4

我 Ctrl+C 退出了初始 pgAdmin4 设置。python pgAdmin4.py现在,如果我尝试重新运行安装,则会收到大量错误。我现在正在使用 pgAdmin3,但我想知道如何解决这个问题。完整的回溯如下:

Traceback (most recent call last):
File "pgAdmin4.py", line 37, in <module>
    app = create_app()
File "/home/sean/.virtualenvs/pgadmin/lib/python2.7/site-packages/pgadmin4/pgadmin/__init__.py", line 244, in create_app
    db_upgrade(app)
File "/home/sean/.virtualenvs/pgadmin/lib/python2.7/site-packages/pgadmin4/pgadmin/setup/db_upgrade.py", line 25, in db_upgrade
    flask_migrate.upgrade(migration_folder)
File "/home/sean/.virtualenvs/pgadmin/local/lib/python2.7/site-packages/flask_migrate/__init__.py", line 244, in upgrade
    command.upgrade(config, revision, sql=sql, tag=tag)
File "/home/sean/.virtualenvs/pgadmin/local/lib/python2.7/site-packages/alembic/command.py", line 254, in upgrade
    script.run_env()
File "/home/sean/.virtualenvs/pgadmin/local/lib/python2.7/site-packages/alembic/script/base.py", line 421, in run_env
    util.load_python_file(self.dir, 'env.py')
File "/home/sean/.virtualenvs/pgadmin/local/lib/python2.7/site-packages/alembic/util/pyfiles.py", line 93, in load_python_file
    module = load_module_py(module_id, path)
File "/home/sean/.virtualenvs/pgadmin/local/lib/python2.7/site-packages/alembic/util/compat.py", line 75, in load_module_py
    mod = …
Run Code Online (Sandbox Code Playgroud)

ubuntu python pgadmin-4

4
推荐指数
1
解决办法
1万
查看次数

SSMS v17 是否允许用户在 Python 脚本中输入?

随着 SQL Server 2017 附带的 Python 功能的引入,我想知道是否有人能够使用 SSMS v17.x 并运行需要用户输入的 Python 脚本。这是一个示例基本脚本:

execute sp_execute_external_script  @language = N'Python', 
@script =N' print ("This is a PYTHON test")
userinput = int(input ("Enter LBs to convert to KG")) 
converted = userinput * 0.453592     
print (converted) '
Run Code Online (Sandbox Code Playgroud)

该脚本在 SSMS 中无休止地运行,而如果它只是一个打印语句;成功完成并产生打印结果。

我知道我可以使用像 Pycharm 这样的 Python IDE 控制台,但我想知道 SSMS 是否有这样的功能。我在互联网上的研究并没有那么富有成效。Python的大部分使用都与建模和分析有关。

sql-server ssms python sql-server-2017

4
推荐指数
1
解决办法
126
查看次数

当我运行 mssql-cli 时,我收到“没有名为 mssqlcli 的模块”

我刚刚用 pip 安装了 mssql-cli,

pip3 install mssql-cli
Run Code Online (Sandbox Code Playgroud)

然后我尝试跑步,mssql-cli然后我得到了

$ mssql-cli
/usr/bin/python: No module named mssqlcli
Run Code Online (Sandbox Code Playgroud)

sql-server linux ubuntu python

4
推荐指数
1
解决办法
3135
查看次数

Python 脚本使数据库处于恢复模式

我正在尝试使用 python 来自动化我们的一些数据库恢复。当我运行 SQL 查询时,数据库会恢复并正常恢复,但是当我运行使用相同 SQL 查询的 python 脚本时,数据库仍处于恢复模式。

对我做错的任何帮助将不胜感激。

import pyodbc

#Set these Variables
sourceserver = 'MySourceServerName'
destinationserver = 'MyDestinationServerName'
dbname = 'test'


sourceserverplusport = sourceserver + ',1433'
destinationserverplusport = destinationserver + ',1433'


def ExecSQL(serverplusport, dbnameIN, sql):
    try:
        connexecsql = pyodbc.connect('Driver={SQL Server};'
                                         'Server=' + serverplusport +';'
                                         'Database=' + dbnameIN + ';'
                                         'Trusted_Connection=yes;')

        #Set AutoCommit
        if connexecsql is not None:
           connexecsql.autocommit = True
       
        print(sql)
        cursor = connexecsql.cursor()
        cursor.execute(sql)
    finally:    
        cursor.commit
        cursor.close
        connexecsql.commit
        connexecsql.close


sqlcommand = r"""IF @@SERVERNAME = 'MyDestinationServerName'
RESTORE …
Run Code Online (Sandbox Code Playgroud)

sql-server python sql-server-2017

4
推荐指数
1
解决办法
371
查看次数

SQL Server 哈希字节种子

我正在尝试将 SQL Server 生成的HASHBYTES()哈希值与 python hash()(或hashlib) 函数生成的哈希值进行比较。对于这两个函数,使用相同的算法。问题是我不知道 SQL 的种子,所以我无法使用 python 生成相同的输出。有没有办法设置SQL的种子?我无法找到任何与之相关的信息。

sql-server python hashing

4
推荐指数
2
解决办法
212
查看次数

将 AWS DynamoDB 地理空间索引与 Python 结合使用

亚马逊的 AWS DynamoDB 具有地理空间索引功能,可促进地理查询:

查询支持:框查询返回落在一对地理点内的项目,这些地理点定义了投影到球体上的矩形。Radius 查询返回距离地理点给定距离内的项目。

问题在于boto,用于访问 AWS 服务的 Python 库,缺少对 geo 对象的任何引用。另一方面,Java 等价物具有这样的支持

有没有办法使用 Python 在 AWS 上使用 DynamoDB 的地理功能?

spatial aws python dynamodb

3
推荐指数
1
解决办法
3702
查看次数

PgBouncer 不确定性

我第一次使用简单的 Python Web 应用程序(Flask + psycopg2)尝试 PgBouncer,我很难通过简单的谷歌搜索来解释其日志消息的含义。我基本上看到了一堆:

2014-06-09 09:25:07.867 20980 LOG C-0x1b1b240: vinum/vinum@unix:6432 login attempt: db=vinum user=vinum
2014-06-09 09:25:07.867 20980 LOG S-0x1b38bf0: vinum/vinum@127.0.0.1:5432 new connection to server
2014-06-09 09:25:07.875 20980 LOG C-0x1b1b240: vinum/vinum@unix:6432 closing because: client close request (age=0)
2014-06-09 09:25:15.626 20980 LOG C-0x1b1b240: vinum/vinum@unix:6432 login attempt: db=vinum user=vinum
2014-06-09 09:25:16.058 20980 LOG C-0x1b1b240: vinum/vinum@unix:6432 closing because: client close request (age=0)
2014-06-09 09:25:16.762 20980 LOG C-0x1b1b240: vinum/vinum@unix:6432 login attempt: db=vinum user=vinum
2014-06-09 09:25:16.796 20980 LOG C-0x1b1b3a8: vinum/vinum@unix:6432 login attempt: db=vinum …
Run Code Online (Sandbox Code Playgroud)

postgresql python pgbouncer

3
推荐指数
1
解决办法
2789
查看次数

将 CLR 用于正则表达式是否比使用外部脚本更安全?

问题

主要问题我们需要在MS SQL Server 2019上使用正则表达式,能力至少达到POSIX正则表达式的水平。

可能的解决方案

这个来自 stackoverflow 的问答正确地得出结论,如果您的查询必须依赖正则表达式,您应该使用 CLR。这篇 Readgate文章详细阐述了这种方法。所以我和我的一位同事提出了这个解决方案,但我的另一位同事断然表示,在这里使用 CLR 会给安全性和稳定性带来巨大风险,而使用外部脚本(Python 或 R)更安全。

这似乎是一个可疑的说法,因为CLR 中的用户代码是可以管理的,所以也许正好相反,但我没能说服我的同事。

在我绝望中写的另一个问题中,因为我被迫使用外部脚本并且仍然产生一个极快的查询。SQLpro 用户在他的评论中指出:

就安全性而言,使用 Python 或 R 可能比使用 CLR 更糟糕!

我倾向于相信。

问题

所以我有两个问题:

  1. 这正则表达式的解决方案更安全的外部脚本或基于CLR(如描述这里)?为什么?

  2. 我还建议在同一个 Windows Server 上运行 python 代码(必须是同一个服务器,因为策略)但在操作系统上安装了 python intrepeter。因为结果以任何一种方式导出到 CSV 文件中并存储在 SQL Server 中。那么我就可以使用 Python 的多处理模块来实现正确的性能。答案是相同的,在 SQL Server 中运行 Python 比在外部应用程序中更安全。这也是一个有问题的说法。

sql-server regular-expression sql-clr python external-scripts

3
推荐指数
1
解决办法
97
查看次数

MySQL数据库副本

我需要使用 Python 程序在 MySQL 服务器中创建数据库的副本。

经过一番研究,我发现 mysqldump 是更好的方法:

import subprocess

command_to_copy_db = f"mysqldump -h {SQL_DB_HOST} -P 3306 -u {SQL_DB_USER} -p{SQL_DB_PASSWORD} {src_database_name} | mysql -u root -p{SQL_DB_PASSWORD} {dest_database_name}"


backup_db_command_result = subprocess.run(command_to_copy_db, stdout=subprocess.PIPE, stderr=subprocess.PIPE,
                                          shell=True, text=True)
Run Code Online (Sandbox Code Playgroud)

我的查询:

这种方法有什么问题吗?或者有没有更好的方法来做到这一点?

mysql mysqldump backup python

3
推荐指数
1
解决办法
351
查看次数