def run_test_212(self): conn = ibm_db.connect(config.database, config.user, config.password) server = ibm_db.server_info(conn) result = ibm_db.exec_immediate(conn, "select * from sales") if (server.DBMS_NAME[0:3] == 'IDS'): i = "sales_person" else: i = "SALES_PERSON" print("%s size %d" % (i, ibm_db.field_display_size(result, i))) i = 2 print("%d size %d" % (i, ibm_db.field_display_size(result, i)))
def run_test_212(self): conn = ibm_db.connect(config.database, config.user, config.password) server = ibm_db.server_info( conn ) result = ibm_db.exec_immediate(conn, "select * from sales") if (server.DBMS_NAME[0:3] == 'IDS'): i = "sales_person" else: i = "SALES_PERSON" print "%s size %d" % (i, ibm_db.field_display_size(result,i)) i = 2 print "%d size %d" % (i, ibm_db.field_display_size(result,i))
def run_test_240(self): conn = ibm_db.connect(config.database, config.user, config.password) result = ibm_db.exec_immediate(conn, "select * from sales") result2 = ibm_db.exec_immediate(conn, "select * from staff") result3 = ibm_db.exec_immediate(conn, "select * from emp_photo") for i in range(0, ibm_db.num_fields(result)): print(str(i) + ":" + str(ibm_db.field_width(result, i))) print("\n-----") for i in range(0, ibm_db.num_fields(result2)): print( str(i) + ":" + str(ibm_db.field_width(result2, ibm_db.field_name(result2, i))) ) print("\n-----") for i in range(0, 3): print( str(i) + ":" + str(ibm_db.field_width(result3, i)) + "," + str(ibm_db.field_display_size(result3, i))) print("\n-----") print("region:%s" % ibm_db.field_type(result, 'region')) print("5:%s" % ibm_db.field_type(result2, 5))
def main(): conn = None stmt = None if not conf.has_option('passwd'): conf.conf.set(conf.section, 'passwd', unicode(getpass.getpass('Пароль: '), 'utf-8')) try: conn = ibm_db.connect('DATABASE=%s;HOSTNAME=%s;PORT=%d;PROTOCOL=%s;UID=%s;PWD=%s;' % (conf.get('database'), conf.get('hostname'), conf.getint('port'), conf.get('protocol'), conf.get('user'), conf.get('passwd')), '', '') stmt = ibm_db.exec_immediate(conn, unicode(args.request[0], 'utf-8')) try: result = ibm_db.fetch_tuple(stmt) except: rows = ibm_db.num_rows(stmt) if rows != -1: print u'Обработано строк %d' % rows else: print u'Команда выполнена' return if result: column_conv = [] head = u'' underline=u'' for i in xrange(len(result)): if i != 0: head += u'|' underline += u'+' name = ibm_db.field_name(stmt, i) size = ibm_db.field_display_size(stmt, i) if len(name) > size: size = len(name) if ibm_db.field_nullable(stmt, i) and len(u'NULL') > size: size = len(u'NULL') type_field = ibm_db.field_type(stmt, i) if type_field == 'float' or type_field == 'real' or type_field == 'decimal': column_conv.append({'size': size, 'format': u'{0:%d.%df}' % (size, (size - ibm_db.field_precision(stmt, i))), 'fn': convert_to_float}) elif type_field == 'int' or type_field == 'bigint': column_conv.append({'size': size, 'format': u'{0:%dd}' % size, 'fn': convert_to_int}) else: column_conv.append({'size': size, 'format': u'{0:%ds}' % size, 'fn': without_convert}) head += name.center(size) underline += u'-' * size print head print underline while( result ): print conv(result, column_conv) result = ibm_db.fetch_tuple(stmt) else: print u'Результата не возвращено' except Exception as e: print >> sys.stderr, e sys.exit(-1) finally: if stmt: ibm_db.free_result(stmt) if conn: ibm_db.close(conn)
def run_test_210(self): conn = ibm_db.connect(config.database, config.user, config.password) result = ibm_db.exec_immediate(conn, "select * from staff") cols = ibm_db.num_fields(result) for i in range(0, cols): size = ibm_db.field_display_size(result, i) print("col:%d and size: %d" % (i, size)) ibm_db.close(conn)
def run_test_210(self): conn = ibm_db.connect(config.database, config.user, config.password) result = ibm_db.exec_immediate(conn, "select * from staff") cols = ibm_db.num_fields(result) for i in range(0, cols): size = ibm_db.field_display_size(result,i) print "col:%d and size: %d" % (i, size) ibm_db.close(conn)
def run_test_211(self): conn = ibm_db.connect(config.database, config.user, config.password) result = ibm_db.exec_immediate(conn, "select * from sales") i = 1 while (i <= ibm_db.num_fields(result)): #printf("%d size %d\n",i, ibm_db.field_display_size(result,i) || 0) print "%d size %d" % (i, ibm_db.field_display_size(result, i) or 0) i += 1 ibm_db.close(conn)
def run_test_211(self): conn = ibm_db.connect(config.database, config.user, config.password) result = ibm_db.exec_immediate(conn, "select * from sales") i = 1 while (i <= ibm_db.num_fields(result)): #printf("%d size %d\n",i, ibm_db.field_display_size(result,i) || 0) print("%d size %d" % (i, ibm_db.field_display_size(result,i) or 0)) i += 1 ibm_db.close(conn)
def run_test_213(self): conn = ibm_db.connect(config.database, config.user, config.password) result = ibm_db.exec_immediate(conn, "select * from sales") i = "sales_person" print("%s size %d\n" % (i, (ibm_db.field_display_size(result, i) or 0))) i = "REGION" print("%s size %d\n" % (i, (ibm_db.field_display_size(result, i) or 0))) i = "REgion" print("%s size %d\n" % (i, (ibm_db.field_display_size(result, i) or 0))) i = "HELMUT" print("%s size %d\n" % (i, (ibm_db.field_display_size(result, i) or 0))) t = ibm_db.field_display_size(result, "") print(t) t = ibm_db.field_display_size(result, "HELMUT") print(t) t = ibm_db.field_display_size(result, "Region") print(t) t = ibm_db.field_display_size(result, "SALES_DATE") print(t)
def run_test_213(self): conn = ibm_db.connect(config.database, config.user, config.password) result = ibm_db.exec_immediate(conn, "select * from sales") i = "sales_person" print("%s size %d\n" % (i, (ibm_db.field_display_size(result,i) or 0))) i = "REGION" print("%s size %d\n" % (i, (ibm_db.field_display_size(result,i) or 0))) i = "REgion" print("%s size %d\n" % (i, (ibm_db.field_display_size(result,i) or 0))) i = "HELMUT" print("%s size %d\n" % (i, (ibm_db.field_display_size(result,i) or 0))) t = ibm_db.field_display_size(result,"") print(t) t = ibm_db.field_display_size(result,"HELMUT") print(t) t = ibm_db.field_display_size(result,"Region") print(t) t = ibm_db.field_display_size(result,"SALES_DATE") print(t)
def run_test_240(self): conn = ibm_db.connect(config.database, config.user, config.password) result = ibm_db.exec_immediate(conn, "select * from sales") result2 = ibm_db.exec_immediate(conn, "select * from staff") result3 = ibm_db.exec_immediate(conn, "select * from emp_photo") for i in range(0, ibm_db.num_fields(result)): print(str(i) + ":" + str(ibm_db.field_width(result,i))) print("\n-----") for i in range(0, ibm_db.num_fields(result2)): print(str(i) + ":" + str(ibm_db.field_width(result2,ibm_db.field_name(result2,i)))) print("\n-----") for i in range(0, 3): print(str(i) + ":" + str(ibm_db.field_width(result3,i)) + "," + str(ibm_db.field_display_size(result3,i))) print("\n-----") print("region:%s" % ibm_db.field_type(result,'region')) print("5:%s" % ibm_db.field_type(result2,5))
# Otherwise, Complete The Status Message else: print("Done!\n") # Display A Report Header print("Result set information:\n") print("COLUMN NAME DATA DISPLAY SIZE") print("___________ _________________") # As Long As There Is Column Information, ... for loopCounter in range(0, numColumns): # Get The Name Of The Current Column colName = ibm_db.field_name(resultSet, loopCounter) # Get The Display Size Of The Data For The Current Column colDispSize = ibm_db.field_display_size(resultSet, loopCounter) # Format And Display The Data Retrieved if (not colName is False) and (not colDispSize is False): print("{:<13} {:>15}".format(colName, colDispSize)) # Add A Blank Line To The End Of The Report print() # Close The Database Connection That Was Opened Earlier conn.closeConnection() # Return Control To The Operating System exit()