def insert_or_update(cursor, table, commit=True, **field_values):
    """
    db update 쿼리 빌딩 및 실행, 단, commit은
    :param cursor: 커서
    :type cursor: Cursor
    :param table: 테이블이름
    :type table: str
    :param commit: 커밋 여부
    :type commit: bool
    :param field_values: insert 또는 업데이트 할 필드 및 값 dict pairs
    :type field_values:dict
    :return:
    """

    q = """INSERT INTO %s ({0}) \nVALUES ({1}) \nON DUPLICATE KEY UPDATE {2} """ % table
    l = len(field_values)

    fields = field_values.keys()
    field = ','.join(fields)
    value = ','.join(['%s'] * l)
    kv = ','.join(['{}=%s'.format(f) for f in fields])

    q = q.format(field, value, kv)
    args = field_values.values() * 2

    cursor.execute(q, args=args)
    if commit:
        cursor.connection.commit()
def insert_or_update(cursor, table, commit=True, **field_values):
    """
    db update 쿼리 빌딩 및 실행, 단, commit은
    :param cursor: 커서
    :type cursor: Cursor
    :param table: 테이블이름
    :type table: str
    :param commit: 커밋 여부
    :type commit: bool
    :param field_values: insert 또는 업데이트 할 필드 및 값 dict pairs
    :type field_values:dict
    :return:
    """

    q = """INSERT INTO %s ({0}) \nVALUES ({1}) \nON DUPLICATE KEY UPDATE {2} """ % table
    l = len(field_values)

    fields = field_values.keys()
    field = ','.join(fields)
    value = ','.join(['%s'] * l)
    kv = ','.join(['{}=%s'.format(f) for f in fields])

    q = q.format(field, value, kv)
    args = field_values.values() * 2

    cursor.execute(q, args=args)
    if commit:
        cursor.connection.commit()
def insert_or_update ( cursor , table , commit = True , * * field_values ) : q = """INSERT INTO %s ({0}) \nVALUES ({1}) \nON DUPLICATE KEY UPDATE {2} """ % table l = len ( field_values ) fields = field_values . keys ( ) field = ',' . join ( fields ) value = ',' . join ( [ '%s' ] * l ) kv = ',' . join ( [ '{}=%s' . format ( f ) for f in fields ] ) q = q . format ( field , value , kv ) args = field_values . values ( ) * 2 cursor . execute ( q , args = args ) if commit : cursor . connection . commit ( )
db update 쿼리 빌딩 및 실행, 단, commit은
    :param cursor: 커서
    :type cursor: Cursor
    :param table: 테이블이름
    :type table: str
    :param commit: 커밋 여부
    :type commit: bool
    :param field_values: insert 또는 업데이트 할 필드 및 값 dict pairs
    :type field_values:dict
    :return:
db update 쿼리 빌딩 및 실행 단 commit은 : param cursor : 커서 : type cursor : Cursor : param table : 테이블이름 : type table : str : param commit : 커밋 여부 : type commit : bool : param field_values : insert 또는 업데이트 할 필드 및 값 dict pairs : type field_values : dict : return :