使用pyodbc和ping状态更新多行

糊状的

我正在寻找使用os和pyodbc更新一列中的多行。我的代码如下:

def poll():
for x in device_query():
    command = os.system('ping -n 1 %s' % x[4])
    if command == 0 and x[8] == '':
        cursor.execute('insert into CamTable (UnitStatus)', 'online')
        cnxn.commit()
    elif command == 0 and x[8] == 'offline':
        cursor.execute("update CamTable set UnitStatus=? where UnitStaus='offline'", 'online')
        cnxn.commit()
    elif command != 0 and x[8] == '':
        cursor.execute('insert into CamTable (UnitStatus)', 'offline')
        cnxn.commit()
    elif command != 0 and x[8] == 'online':
        cursor.execute('update CamTable set UnitStatus=?', 'offline')
        cnxn.commit()
    else:
        pass

但是,x [8]中的每一行都更新为相同的值。如何更新每行的特定状态?

谢谢。

脚掌PA

您需要一个WHERE子句,否则它将更新表中的所有行:

cursor.execute('update CamTable set UnitStatus=?', 'offline')

请阅读此处有关UPDATE查询和INSERT查询的文档,您似乎语法错误:

https://code.google.com/p/pyodbc/wiki/GettingStarted

作为不正确语法的另一个示例,这是:

cursor.execute('insert into CamTable (UnitStatus)', 'online')

应该是这样的:

cursor.execute('insert into CamTable (UnitStatus) VALUES (?)', 'online')

修复语法后,更多上下文也将有所帮助,因此我们可以确定您实际在if子句中的哪个位置执行。您从哪里获得device_query()的?

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用Ruby ActiveRecord选择和更新多行

来自分类Dev

使用 PHP 生成的 webform 和 mySQL 更新表中的多行

来自分类Dev

使用PostgreSQL更新多行

来自分类Dev

如何使用React钩子以当前状态和先前状态更新当前状态

来自分类Dev

React如何使用useEffect监视和更新状态?

来自分类Dev

使用休眠条件更新多行

来自分类Dev

使用ID列表更新多行

来自分类Dev

使用Yii的updateAll()更新多行

来自分类Dev

使用单个值更新多行

来自分类Dev

使用select语句更新多行

来自分类Dev

SQL更新语句,但使用pyodbc

来自分类Dev

在固定位置打印和更新多行

来自分类Dev

如何显示和动态更新多行结果

来自分类Dev

使用 `{` 和 `}` 语法的 Bash 多行

来自分类Dev

如何在单个查询中使用联接和聚合函数更新表中的多行

来自分类Dev

使用select..where..in和一个连接更新多行

来自分类Dev

如何在单个查询中使用联接和聚合函数更新表中的多行

来自分类Dev

使用cqlengine在cassandra中插入和更新很多行的最快,最高效的方法

来自分类Dev

在使用 PHP 和 SQL 填充的网络表单中更新同一表的多行

来自分类Dev

获取具有多行和不同状态的数据

来自分类Dev

如何使用Quickblox IOS更新已发送和已接收消息的读取和传递状态?

来自分类Dev

使用LINQ更新多行的多列

来自分类Dev

使用CASE WHEN-ORACLE更新多行

来自分类Dev

如何使用单个where子句更新多行

来自分类Dev

使用返回多行的子查询进行更新

来自分类Dev

使用ID数组更新和删除多行

来自分类Dev

如何使用UPDATE JOIN从多行更新单行

来自分类Dev

使用IN子句更新SQL Server中的多行

来自分类Dev

使用LINQ更新多行的多列

Related 相关文章

热门标签

归档