我有一个脚本如下
cursor = connection.cursor()
select_string = "SELECT * from mytable"
cursor.execute(select_string)
data = cursor.fetchall()
print(data)
print len(data)
数据如下所示
number day info is_true
82 Monday quick "lazy fox" & bear true
12 Tuesday why did 'the frog' cross false
当我打印数据的长度时,由于info列中的引号/特殊字符,因此未考虑is_true列。有没有办法我可以从表中选择*并忽略任何可能提前结束列处理的引用?
如果您使用Pandas从SQL连接读取表,则字符串格式不应该是一个问题。这应该工作:
import pandas as pd
import pyodbc
connection = pyodbc.connect('<SERVER>')
select_string = "SELECT * from mytable"
data = pd.read_sql(select_string , connection)
print(data)
print(data.shape)