而當預計算的欄位是NVARCHAR或VARCHAR就會出現類似以下錯誤訊息。
sum 運算子的運算元資料類型 nvarchar 無效。
調整SQL語法如下:
SELECT c1,c2,c3,sum(c4) from tb1 group by c1,c2,c3 ##修改如下 SELECT c1,c2,c3,Sum(isnull(cast(c4 as float),0)) from tb1 group by c1,c2,c3
SELECT c1,c2,c3,sum(c4) from tb1 group by c1,c2,c3 ##修改如下 SELECT c1,c2,c3,Sum(isnull(cast(c4 as float),0)) from tb1 group by c1,c2,c3
$url = "http://127.0.0.1:8080/api";
$curl_handle=curl_init();
curl_setopt($curl_handle, CURLOPT_URL, $url);
curl_setopt($curl_handle, CURLOPT_CONNECTTIMEOUT, 2);
curl_setopt($curl_handle, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl_handle, CURLOPT_USERAGENT, 'PHP Agent');
$jsonresult = curl_exec($curl_handle);
curl_close($curl_handle);
##取得json,例如json格式{'resultcode':'OK'}
$result = json_decode($jsonresult);
##取得某個json字串或變數
$result->resultcode ###此段取回的結果就是OK字串
/etc/mysql/mysql.conf.d/mysqld.cnf ####在以下位置加入 [mysqld] sql_mode=IGNORE_SPACE,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
###套件安裝
pip install pysnmp
###把snmpget包裝成一個方法呼叫
from pysnmp.hlapi import *
from pysnmp.entity.rfc3413.oneliner import cmdgen
from pysnmp.proto import rfc1902
ip = '127.0.0.1'
oid = "1.3.6.1.2.1.2.2.1.8.1"
result = snmpget(ip,oid)
def snmpget(ip,oid):
errorIndication, errorStatus, errorIndex, varBinds = next(
getCmd(SnmpEngine(),
CommunityData('private'),
UdpTransportTarget((ip, 161)),
ContextData(),
ObjectType(ObjectIdentity(oid)))
)
if errorIndication:
print(errorIndication)
elif errorStatus:
print('%s at %s' % (errorStatus.prettyPrint(),
errorIndex and varBinds[int(errorIndex) - 1][0] or '?'))
else:
for varBind in varBinds:
return(str(varBind).split('=')[1])
###snmpset用法,此方法為一次設定兩個OID
from pysnmp.entity.rfc3413.oneliner import cmdgen
from pysnmp.proto import rfc1902
cmdGen = cmdgen.CommandGenerator()
errorIndication, errorStatus, errorIndex, varBinds = cmdGen.setCmd(
cmdgen.CommunityData('private', mpModel=0),
cmdgen.UdpTransportTarget(127.0.0.1, 161)),
('.1.3.6.1.2.1.0.1.1', rfc1902.Integer(1)),
('.1.3.6.1.2.1.0.1.2, rfc1902.Integer(1))
)
若有問題都歡迎討論,謝謝。
###首先安裝pip套件
pip install pymssql
###程式使用
import pymssql
conn = pymssql.connect(server='127.0.0.1', user='username', password='password?', database='default db')
cur = conn.cursor()
res1 = ""
res2 = ""
res3 = ""
###Insert 用法
sql = """INSERT INTO test (c1,c2,c3) VALUES ('{0}','{1}','{2}');""".format(res1,res2,res3)
cur.execute(sql)
conn.commit()
###Select 用法
sql = "SELECT * FROM test"
cur.execute(sql)
data = cur.fetchall()
for row in data:
c1 = row[0]
c2 = row[1]
c3 = row[2]
若有任何問題都歡迎討論
有些開發的程式在python 3.8的檔案套件不相容,例如pymssql,等。 所以如果不建置虛擬環境的話才特意安裝3.7版本的python 安裝流程如下 # 先進行yum套件的update yum update -y # 安裝相依性套件 yum install gcc o...